Collection<T>.GetEnumerator Method se usa para obtener un enumerador que itera a través de Collection<T> .
Sintaxis:
public System.Collections.Generic.IEnumerator<T> GetEnumerator ();
Valor devuelto: este método devuelve un IEnumerator<T> para la colección<T>.
Los siguientes programas ilustran el uso del método discutido anteriormente:
Ejemplo 1:
// C# code to get an Enumerator that // iterates through the Collection<T> using System; using System.Collections.ObjectModel; class GFG { // Driver code public static void Main() { // Creating a collection of strings Collection<string> myColl = new Collection<string>(); myColl.Add("A"); myColl.Add("B"); myColl.Add("C"); myColl.Add("D"); myColl.Add("E"); // Displaying the number of elements in Collection Console.WriteLine("The number of elements in myColl are: " + myColl.Count); // To get an Enumerator // for the Collection var enumerator = myColl.GetEnumerator(); // If MoveNext passes the end of the // collection, the enumerator is positioned // after the last element in the collection // and MoveNext returns false. while (enumerator.MoveNext()) { Console.WriteLine(enumerator.Current); } } }
Producción:
The number of elements in myColl are: 5 A B C D E
Ejemplo 2:
// C# code to get an Enumerator that // iterates through the Collection<T> using System; using System.Collections.ObjectModel; class GFG { // Driver code public static void Main() { // Creating a collection of integers Collection<int> myColl = new Collection<int>(); myColl.Add(45); myColl.Add(56); myColl.Add(78); myColl.Add(75); // Displaying the number of elements in Collection Console.WriteLine("The number of elements in myColl are: " + myColl.Count); // To get an Enumerator // for the Collection var enumerator = myColl.GetEnumerator(); // If MoveNext passes the end of the // collection, the enumerator is positioned // after the last element in the collection // and MoveNext returns false. while (enumerator.MoveNext()) { Console.WriteLine(enumerator.Current); } } }
Producción:
The number of elements in myColl are: 4 45 56 78 75
Nota:
- La instrucción foreach del lenguaje C# oculta la complejidad de los enumeradores. Por lo tanto, se recomienda usar foreach , en lugar de manipular directamente el enumerador.
- Los enumeradores se pueden usar para leer los datos de la colección, pero no se pueden usar para modificar la colección subyacente.
- Current devuelve el mismo objeto hasta que se llama MoveNext o Reset . MoveNext establece Current en el siguiente elemento.
- Un enumerador sigue siendo válido mientras la colección permanezca sin cambios. Si se realizan cambios en la colección, como agregar, modificar o eliminar elementos, el enumerador se invalida irremediablemente y su comportamiento no está definido.
- Este método es una operación O(1).
Referencia:
Publicación traducida automáticamente
Artículo escrito por Kirti_Mangal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA