zoukankan      html  css  js  c++  java
  • IEnumerable接口学习

    用途:IEnumerable 只是为了实现foreach语句用的.
    主要的方法有:IEnumerator GetEnumerator()   //返回一个循环访问集合的枚举数,返回类型是IEnumerator
    实例:
     
    public class Person : IEnumerable 
        { 
            private string[] names= new string[] { "A", "B", "C" }; 
          
             public IEnumerator GetEnumerator() 
            { 
                 //调用PersonEnumerator类的构造函数,并Person类中的names数组传递过去 
                     return new PersonEnumerator(names); 
            }  
         }
    public class PersonEnumerator : IEnumerator 
        { 
           //定义一个字符串数组 
           private string[] _names;   
          //遍历时的索引 
           private int index = -1; 
     
           //构造函数,带一个字符串数组的参数 
           public PersonEnumerator(string[] temp) 
           { 
               _names = temp; 
           } 

         //返回当前索引指向的names数组中的元素 
         public object Current 
           { 
               get { return _names[index]; } 
         } 
    //索引,判断是否遍历完成 
            public bool MoveNext() 
           { 
              index++; 
                if (index < _names.Length) 
              { 
                   return true; 
               } 
                else 
                   return false; 
         } 

         //重置索引的值,以便下一次遍历 
           public void Reset() 
           { 
               index = -1; 
          } 
        } 
    static void Main(string[] args)          {         
    Person p1 = new Person();          
    IEnumerator rator = p1.GetEnumerator();        
        while (rator.MoveNext())          
        { 
    Console.WriteLine(rator.Current);         
      }        
        Console.ReadKey();       
    }
     

    总结:继承IEnumerable 接口的, 只要实现了这个接口的对象都可以用来遍历。

     
     
  • 相关阅读:
    Android热补丁动态修复
    Android用gif做启动页
    如果通过adb查看当前显示的activity
    Android网络框架比较
    Android高清巨图加载方案
    一些Windows下经验
    工作总结
    C++网络编程总结
    编写导出库
    GridCtrl控件的使用
  • 原文地址:https://www.cnblogs.com/aggierwyp/p/wpf_IEnumerable.html
Copyright © 2011-2022 走看看