索引器与迭代器,属性的区别

索引器允许类或结构的实例按照与数组相同的方式进行索引
迭代器主要是为foreach关键字服务的

打个比方吧(可能不恰当)
加入在桌面上摆上十张纸牌并按照一定的顺序编上1~10的号码,对应的为:

0  1   2   3   4   5   6   7   8   9  
A  B   C   D   E   F   G   H   I    J

如果是索引我索引第二张返回的就是B啦   索引一次只返回一张!
但是迭代器则是使用foreach一个一个返回
索引是在了解集合中的对象的位置时才使用的; 而迭代器就是不知道集合中有哪些对象所以一个一个进行访问。 应该明白了吧!

 

 属性和索引器最本质的区别在于:索引器带参数

属性索引器

允许调用方法,如同它们是公共数据成员。

允许调用对象上的方法,如同对象是一个数组。

可通过简单的名称进行访问。

可通过索引器进行访问。

可以为静态成员或实例成员。

必须为实例成员。

属性的 get 访问器没有参数。

索引器的 get 访问器具有与索引器相同的形参表。

属性的 set 访问器包含隐式 value 参数。

除了 value 参数外,索引器的 set 访问器还具有与索引器相同的形参表。

posted @ 2012-10-07 18:59  尼姑哪里跑  阅读(475)  评论(0编辑  收藏  举报