没有合适的资源?快使用搜索试试~ 我知道了~
首页IEnumerable<T>、IEnumerable、ICollection<T>、IList<T>、ObservableCollectin<T>和Collection<T>得关系。
资源详情
资源评论
资源推荐
ICollection 主要针对静态集合;IList 主要针对动态集合
IEnumerable<T>继承自 IEnumerable
ICollection<T>继承自 IEnumerable<T>
IList<T>继承自 ICollection<T>
IEnumerable 接口
实现了 IEnumerable 接口的集合表明该集合能够提供一个 enumerator(枚举器)对象,
支持当前的遍历集合。IEnumerable 接口只有一个成员 GetEnumerator()方法。
IEnumerator 接口是只读的,包括以下三个成员:
MoveNext()方法调整遍历指针移向集合的下一个元素。注意,遍历指针的初始位置是集
合中第一个元素的前面。要指向第一个元素,必须先调用一次 MoveNext()方法。该方法
返回一个布尔值,如果成功遍历到下一个元素,则返回 true;如果指针移出末尾,则返回
false。
Reset()方法用于设置遍历指针指向初始位置,即集合中第一个元素的前面。
Current 属性返回集合中当前对象的引用。
IEnumerable 和 IEnumerator 的区别:
1、一个 Collection 要支持 foreach 方式的遍历,必须实现 IEnumerable 接口(亦即,必须以某种
方式返回 IEnumerator object)。
2、IEnumerator object 具体实现了 iterator(通过 MoveNext(),Reset(),Current)。
3、从这两个接口的用词选择上,也可以看出其不同:IEnumerable 是一个声明式的接口,声明实现
该接口的 class 是“可枚举(enumerable)”的,但并没有说明如何实现枚举器(iterator);
IEnumerator 是一个实现式的接口,IEnumerator object 就是一个 iterator。
4、IEnumerable 和 IEnumerator 通过 IEnumerable 的 GetEnumerator()方法建立了连接,
client 可以通过 IEnumerable 的 GetEnumerator()得到 IEnumerator object,在这个意义上,将
GetEnumerator()看作 IEnumerator object 的 factory method 也未尝不可。
ICollection 集合
该接口是 IEnumerable 接口的子接口,定义了集合的大小、IEnumerator 接口和同步
方法。在 IEnumerable 接口的基础上增加了以下功能。
Count;该属性返回集合中元素的数目。
CopyTo(Array * array, * int * index);该方法用于实现从集合中拷贝元素到一个一维数组
中。
IList 接口
Add()和 Insert()方法用于向集合中添加条目,使用索引来指定项目要插入的位置,其中
首元素的索引为 0;Add()将新条目添加到尾部。
Remove()和 RemoveAt()用于从列表中删除条目。Clear()用于删除所有条目。
IndexOf 和 Contains()用于搜索该列表。
Item 属性用于获取或设置索引指定的值。C#中可以使用[]运算符进行访问。
IList 接口和 ArrayList 类的目的是实现动态数组,ArrayList 是 IList 的一个实现。
scottxu
- 粉丝: 1
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论2