2010-08-05 11 views

Antwort

8

Ein Enumerator hilft Ihnen (iterate) über eine Sammlung von Gegenständen aufzuzählen.

Sie können den Zweck schließen, indem man einfach am members of the IEnumerator Interface suchen. Genauer gesagt, der Enumerator weiß genau, wo Sie sich in der Sammlung befinden (das aktuelle Element) und wo sich das nächste Element befindet (die MoveNext-Methode).

Überprüfen Sie den Wikipedia-Artikel über den Iterator aus:

Iterator - Wikipedia

1

Sie verwenden einen Enumerator eine Sammlung von Gegenständen iterieren.

Ein schöner Weg, diese Art der Sache zu tun ist, C#, um die foreach Schleife verwendet.

Ex:

IList<string> actors = new List<string>(); 
actors.Add("Chuck Norris"); 
actors.Add("Denzel Washington"); 
actors.Add("Sylvester Stallone"); 

// iterate over the list using foreach 
foreach (string actor in actors) 
{ 
    //... 
} 
4

"Enumerator" ist der Name des .NET Framework für Iteratoren. Die Wikipedia-Seite über Iteratoren enthält eine schöne Einführung in dieses Thema:

Informationen spezifisch für die .NET-Implementierung, die MSDN-Seite der IEnumerator Schnittstelle enthält weitere Informationen:

Im Allgemeinen ermöglicht ein Iterator das Durchlaufen einer Sammlung.

foreach (myType o in myCollection) 
{ 
    // do something with o 
} 

Dies entspricht die folgende explizite Verwendung des Iterator:: In C#, werden Iteratoren am häufigsten implicity durch die foreach statement verwenden

IEnumerator<myType> iter = myCollection.GetEnumerator(); 
while (iter.MoveNext()) 
{ 
    var o = iter.Current; 
    // do something with o 
} 
1

IEnumerable und IEnumarable hat eine Methode namens GetEnumerator (), die gibt ein Enumeratorobjekt

der Enumerator den GetNext() Methode aussetzt, die ziemlich selbsterklärend ist.

Die Enumeratoren aktivieren die foreach-Schleife