对象集合的迭代:IEnumerable,IEnumerator接口
来源:互联网 发布:js限制input输入长度 编辑:程序博客网 时间:2024/04/29 20:19
public class Person:IEnumerable
{
public string Name;
public int Age;
public Person(string name, int age)
{
Name = name;
Age = age;
}
private Person[] Per;
public Person(Person[] per)
{
Per = new Person[per.Length];
for (int i = 0; i < per.Length; i++)
{
Per[i] = per[i];
}
}
public IEnumerator GetEnumerator()
{
return new PersonEnum(Per);
}
}
#region
public class PersonEnum : IEnumerator
{
public Person[] _per;
int postion = -1;
public PersonEnum(Person[] list)
{
_per = list;
}
public bool MoveNext()
{
postion++;
return (postion < _per.Length);
}
public void Reset()
{
postion = -1;
}
public object Current
{
get
{
try
{
return _per[postion];
}
catch(IndexOutOfRangeException)
{
throw new InvalidOperationException();
}
}
}
}
#endregion
static void Main(string[] args)
{
Person[] per = new Person[2];
per[0] = new Person("a", 1);
per[1] = new Person("b", 2);
Person list = new Person(per);
foreach (Person p in list)
{
Console.WriteLine(p.Name);
}
}
- 对象集合的迭代:IEnumerable,IEnumerator接口
- Ienumerable Ienumerator 进行迭代
- 阐述集合类的接口(IEnumerable,IEnumerator,ICollection,IList,IDictionary)
- IEnumerable 和 IEnumerator 接口
- IEnumerable 和 IEnumerator 接口
- IEnumerable 和 IEnumerator 接口
- IEnumerable和IEnumerator接口
- IEnumerable接口与IEnumerator
- IEnumerable 和 IEnumerator 接口
- IEnumerable及IEnumerator接口
- C#学习小记(1) - 集合接口ICollection,IEnumerable,IEnumerator等的关系
- IEnumerator与IEnumerable接口区别
- 使用IEnumerable和IEnumerator接口
- 使用IEnumerator,IEnumerable接口制作一个简单的迭代器
- IEnumerable和IEnumerator的使用
- IEnumerator和IEnumerable的关系
- IEnumerable和IEnumerator的理解
- IEnumerable和 IEnumerator的区别
- ASP.NET学习经验收集(不断更新)
- sql 中批量更新或计算某列的值
- C/C++单元测理论精要(十一)
- 不知是香港的还是台湾的一个rtprtcp项目
- 树状创意管理工具
- 对象集合的迭代:IEnumerable,IEnumerator接口
- net.sf.json.JSONException: java.lang.reflect.InvocationTargetException
- ORACLE 与 mysql 的区别
- Google adsense是什么意思?
- 使用sql语句获得当前月天数
- mschart 上下限阈值 画横线
- 世博会来了
- mssql 中将汉字转换为拼音首字母方法
- C#操作MySQL数据库的简单例子