Build your own IEnumerator/IEnumerable and use it in foreach loop : IEnumerator : Data Structure C# Examples


C# Examples » Data Structure » IEnumerator »

 

Build your own IEnumerator/IEnumerable and use it in foreach loop









    
using  System;
using  System.Collections;

class  LetterEnumerator  :  IEnumerator
{
      string[]  letters;
      int  Position  =  -1;

      public  LetterEnumerator(string[]  theletters)  
      {
            letters  =  new  string[theletters.Length];
            for  (int  i  =  0;  i  <  theletters.Length;  i++)
                  letters[i]  =  theletters[i];
      }

      public  object  Current                                        
      {
            get  {  return  letters[Position];  }
      }

      public  bool  MoveNext()                                      
      {
            if  (Position  <  letters.Length  -  1){  
                  Position++;  return  true;  
            }
            else
                  return  false;
      }

      public  void  Reset()                                            
      {
            Position  =  -1;
      }
}

class  LetterList  :  IEnumerable
{
      string[]  letters  =  {  "A",  "B",  "C"  };
      public  IEnumerator  GetEnumerator()
      {
            return  new  LetterEnumerator(letters);
      }
}

class  MainClass
{
      static  void  Main()
      {
            LetterList  mc  =  new  LetterList();

            foreach  (string  l  in  mc)
                  Console.WriteLine("{0}  ",  l);

      }
}
    
   
  
   



Output

A
B
C


HTML code for linking to this page:

Follow Navioo On Twitter

C# Examples

 Navioo Data Structure
» IEnumerator