Junior — Middle
Waaruit bestaat de interne structuur van de foreach-operator in C#?
sobes.tech AI
Antwoord van AI
De interne werking van de foreach-operator in C# is gebaseerd op het gebruik van de IEnumerable-interface en de methode GetEnumerator(). De belangrijkste onderdelen:
- Verzameling die
IEnumerableimplementeert — het object waarop wordt geïtereerd. - Enumerator (enumerator), die
IEnumeratorimplementeert — het object dat de iteratie over de verzameling beheert. - Methode
MoveNext()— verplaatst de aanwijzer naar het volgende element. - Eigenschap
Current— geeft het huidige element van de verzameling terug.
Voorbeeld van wat er onder de motorkap gebeurt:
IEnumerable collection = ...;
IEnumerator enumerator = collection.GetEnumerator();
while (enumerator.MoveNext())
{
var item = enumerator.Current;
// lichaam van de foreach-lus
}
Op deze manier vereenvoudigt foreach het werken met enumerators, door de details van de aanroep van GetEnumerator(), MoveNext() en toegang tot Current te verbergen.