Junior
Wat is IEnumerable in C#?
sobes.tech AI
Antwoord van AI
IEnumerable in C# is een interface gedefinieerd in de namespace System.Collections. Het biedt een algemene manier om door de elementen van een collectie te itereren.
Belangrijkste kenmerken van IEnumerable:
- Toegang via iterator: Definieert de methode
GetEnumerator(), die een object retourneert dat de interfaceIEnumeratorimplementeert.IEnumeratormaakt het mogelijk om sequentieel van het ene element naar het andere te gaan. - Alleen lezen:
IEnumerablestaat alleen toe om de elementen te doorlopen. Het biedt geen methoden om elementen toe te voegen, te verwijderen of te wijzigen. - Lui laden: Het gebruik van
IEnumerableleidt vaak tot lui laden. Elementen worden alleen gegenereerd of geladen wanneer dat nodig is tijdens de iteratie. - Basis van LINQ:
IEnumerableis een fundamenteel interface voor veel LINQ-operaties. LINQ-extensiemethoden (zoalsWhere,Select,OrderBy) werken met collecties dieIEnumerableimplementeren, waardoor ketens van bewerkingen kunnen worden gemaakt.
Voorbeeld van gebruik:
// Maak een lijst van strings
List<string> fruit = new List<string> { "appel", "banaan", "kers" };
// Itereer over de lijst met behulp van foreach, dat werkt met IEnumerable
foreach (string item in fruit)
{
// Print elk item
Console.WriteLine(item);
}
Gerelateerde interfaces:
| Interface | Beschrijving |
|---|---|
IEnumerable |
Biedt iteratie over de elementen van een collectie |
IEnumerable<T> |
Generieke versie van IEnumerable voor getypte collecties |
ICollection |
Breidt IEnumerable uit, voegt methoden toe voor grootte, toevoegen/verwijderen van elementen (niet universeel) |
ICollection<T> |
Generieke versie van ICollection |
IList<T> |
Breidt ICollection<T> uit, voegt toegang tot elementen via index toe |