C# | Get an enumerator that iterates through the stringDictionary

StringDictionary.GetEnumerator method is used to return an enumerator that iterates through the string dictionary.

Syntax:

public virtual System.Collections.IEnumerator GetEnumerator ();

Return Value: An IEnumerator that iterates through the string dictionary.



Below given are some examples to understand the implementation in a better way:

Example 1:

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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);
        }
    }
}

chevron_right


Output:

d Dog
b Banana
c Cat
a Apple

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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);
        }
    }
}

chevron_right


Output:

iv four
i one
iii three
v five
ii two

Note:

  • Enumerators can be used to read the data in the collection, but they cannot be used to modify the underlying collection.
  • An enumerator remains valid as long as the collection remains unchanged. If changes are made to the collection, such as adding, modifying, or deleting elements, the enumerator is irrecoverably invalidated and its behavior is undefined.
  • This method is an O(1) operation.

Reference:



My Personal Notes arrow_drop_up

In love with a semicolon because sometimes i miss it so badly)

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.