El método StringDictionary.GetEnumerator se usa para devolver un enumerador que itera a través del diccionario de strings.
Sintaxis:
public virtual System.Collections.IEnumerator GetEnumerator ();
Valor devuelto: un IEnumerator que itera a través del diccionario de strings.
A continuación se dan algunos ejemplos para entender la implementación de una mejor manera:
Ejemplo 1:
// C# code to get an enumerator // that iterates through the stringDictionary using System; using System.Collections; using System.Collections.Specialized; class GFG { // Driver code public static void Main() { // Creating a StringDictionary named myDict StringDictionary myDict = new StringDictionary(); // Adding key and value into the StringDictionary myDict.Add("A", "Apple"); myDict.Add("B", "Banana"); myDict.Add("C", "Cat"); myDict.Add("D", "Dog"); // "IEnumerator" interface supports a simple // iteration over a non-generic collection. IEnumerator myEnumerator = myDict.GetEnumerator(); DictionaryEntry de; // "MoveNext" advances the enumerator // to the next element of the collection. // you must call "MoveNext" to advance the // enumerator to the first element of the // collection before reading the value of "Current" while (myEnumerator.MoveNext()) { // "Current" returns the same object until // either "MoveNext" is called. // "MoveNext" sets "Current" to the next element. de = (DictionaryEntry)myEnumerator.Current; Console.WriteLine(de.Key + " " + de.Value); } } }
Producción:
d Dog b Banana c Cat a Apple
Ejemplo 2:
// C# code to get an enumerator // that iterates through the stringDictionary using System; using System.Collections; using System.Collections.Specialized; class GFG { // Driver code public static void Main() { // Creating a StringDictionary named myDict StringDictionary myDict = new StringDictionary(); // Adding key and value into the StringDictionary myDict.Add("I", "one"); myDict.Add("II", "two"); myDict.Add("III", "three"); myDict.Add("IV", "four"); myDict.Add("V", "five"); // "IEnumerator" interface supports a simple // iteration over a non-generic collection. IEnumerator myEnumerator = myDict.GetEnumerator(); DictionaryEntry de; // "MoveNext" advances the enumerator // to the next element of the collection. // you must call "MoveNext" to advance the // enumerator to the first element of the // collection before reading the value of "Current" while (myEnumerator.MoveNext()) { // "Current" returns the same object until // either "MoveNext" is called. // "MoveNext" sets "Current" to the next element. de = (DictionaryEntry)myEnumerator.Current; Console.WriteLine(de.Key + " " + de.Value); } } }
Producción:
iv four i one iii three v five ii two
Nota:
- Los enumeradores se pueden usar para leer los datos de la colección, pero no se pueden usar para modificar la colección subyacente.
- 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 Sahil_Bansall y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA