Sobes.tech
Junior — Middle

Wat is het verschil tussen de verschillende typen collectie-interfaces?

sobes.tech AI

Antwoord van AI

In C# definiëren collectie-interfaces verschillende contracten voor het werken met datasets, en hun verschil ligt in functionaliteit en doel:

  • IEnumerable<T> — basisinterface voor het doorlopen van een collectie met behulp van foreach. Alleen lezen van elementen één voor één.
  • ICollection<T> — breidt IEnumerable<T> uit, voegt methoden toe om de collectie te wijzigen (Add, Remove), eigenschappen Count en IsReadOnly.
  • IList<T> — breidt ICollection<T> uit, voegt een indexeerder toe voor toegang op index, methoden voor invoegen en verwijderen op index.
  • IDictionary<TKey, TValue> — vertegenwoordigt een collectie van sleutel-waardeparen, waarbij toegang tot elementen via de sleutel plaatsvindt.

De keuze van de interface hangt dus af van de vereiste operaties: als alleen iteratie nodig is — IEnumerable<T>, als wijziging en telling — ICollection<T>, als toegang op index — IList<T>, als werken met sleutels — IDictionary<TKey, TValue>.