C# | Obtenga un enumerador que itere a través de HybridDictionary – Part 1

El método HybridDictionary.GetEnumerator se usa para devolver un IDictionaryEnumerator que itera a través de HybridDictionary.

Sintaxis:

public System.Collections.IDictionaryEnumerator GetEnumerator ();

Valor de retorno: devuelve un IDictionaryEnumerator (una interfaz que enumera los elementos de un diccionario no genérico) para HybridDictionary.

Los siguientes programas ilustran el uso del método HybridDictionary.GetEnumerator :

Ejemplo 1:

// C# code to get an IDictionaryEnumerator
// that iterates through the HybridDictionary.
using System;
using System.Collections;
using System.Collections.Specialized;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a HybridDictionary named myDict
        HybridDictionary myDict = new HybridDictionary();
  
        // Adding key/value pairs in myDict
        myDict.Add("A", "Apple");
        myDict.Add("B", "Banana");
        myDict.Add("C", "Cat");
        myDict.Add("D", "Dog");
        myDict.Add("E", "Elephant");
        myDict.Add("F", "Fish");
  
        // To get an IDictionaryEnumerator
        // for the HybridDictionary.
        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:

A --> Apple
B --> Banana
C --> Cat
D --> Dog
E --> Elephant
F --> Fish

Ejemplo 2:

// C# code to get an IDictionaryEnumerator
// that iterates through the HybridDictionary.
using System;
using System.Collections;
using System.Collections.Specialized;
  
class GFG {
  
    // Driver code
    public static void Main()
    {
  
        // Creating a HybridDictionary named myDict
        HybridDictionary myDict = new HybridDictionary();
  
        // Adding key/value pairs in myDict
        myDict.Add("I", "first");
        myDict.Add("II", "second");
        myDict.Add("III", "third");
        myDict.Add("IV", "fourth");
        myDict.Add("V", "fifth");
  
        // To get an IDictionaryEnumerator
        // for the HybridDictionary.
        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 --> first
II --> second
III --> third
IV --> fourth
V --> fifth

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 Sahil_Bansall y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *