El método Dictionary<TKey, TValue>.GetEnumerator se usa para devolver un enumerador que itera a través de Dictionary<TKey, TValue>.
Sintaxis:
public System.Collections.Generic.Dictionary<TKey,TValue>.Enumerator GetEnumerator();
Valor devuelto: este método devuelve una estructura Dictionary<TKey, TValue>.Enumerator para Dictionary<TKey, TValue>.
Los siguientes programas ilustran el uso de Dictionary<TKey, TValue>.GetEnumerator Method :
Ejemplo 1:
// C# code to get an IDictionaryEnumerator // that iterates through the Dictionary using System; using System.Collections; using System.Collections.Generic; class GFG { // Driver code public static void Main() { // Creating a Dictionary named myDict Dictionary<string, string> myDict = new Dictionary<string, string>(); myDict.Add("Australia", "Canberra"); myDict.Add("Belgium", "Brussels"); myDict.Add("Netherlands", "Amsterdam"); myDict.Add("China", "Beijing"); myDict.Add("Russia", "Moscow"); myDict.Add("India", "New Delhi"); // To get an IDictionaryEnumerator // for the Dictionary IDictionaryEnumerator myEnumerator = myDict.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 (myEnumerator.MoveNext()) Console.WriteLine(myEnumerator.Key + " --> " + myEnumerator.Value); } }
Producción:
Australia --> Canberra Belgium --> Brussels Netherlands --> Amsterdam China --> Beijing Russia --> Moscow India --> New Delhi
Ejemplo 2:
// C# code to get an IDictionaryEnumerator // that iterates through the Dictionary using System; using System.Collections; using System.Collections.Generic; class GFG { // Driver code public static void Main() { // Creating a Dictionary named myDict Dictionary<string, string> myDict = new Dictionary<string, string>(); // Adding key/value pairs in myDict myDict.Add("I", "C"); myDict.Add("II", "C++"); myDict.Add("III", "Java"); myDict.Add("IV", "Python"); myDict.Add("V", "C#"); // To get an IDictionaryEnumerator // for the Dictionary IDictionaryEnumerator myEnumerator = myDict.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 (myEnumerator.MoveNext()) Console.WriteLine(myEnumerator.Key + " --> " + myEnumerator.Value); } }
Producción:
I --> C II --> C++ III --> Java IV --> Python V --> C#
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