Junior — Middle
No kā sastāv iekšējā struktūra foreach operatorā C#?
sobes.tech AI
Atbilde no AI
C# iekšējā foreach operatora struktūra balstās uz IEnumerable saskarnes un tās GetEnumerator() metodes izmantošanu. Galvenie elementi:
- Kolekcija, kas īsteno
IEnumerable— objekts, pa kuru notiek iterācija. - Enumeratoris (
IEnumeratorīsteno) — objekts, kas pārvalda iterāciju pa kolekciju. - Metode
MoveNext()— pārvieto indikatoru uz nākamo elementu. - Īpašība
Current— atgriež pašreizējo elementu.
Piemērs, kas notiek aizkulisēs:
IEnumerable collection = ...;
IEnumerator enumerator = collection.GetEnumerator();
while (enumerator.MoveNext())
{
var item = enumerator.Current;
// foreach cikla ķermenis
}
Tādējādi, foreach vienkāršo darbu ar enumeratoriem, slēpjot GetEnumerator(), MoveNext() un Current piekļuves detaļas.