摘要: 2012-08-05©tc庄稼汉 迭代器是一种方法、get 访问器或运算符,它通过使用 yield 关键字对数组或集合类执行自定义迭代。 yield 返回语句会导致源序列中的元素在访问源序列中的下一个元素之前立即返回给调用方。 尽管您以方法的形式编写迭代器,但编译器会将其转换为一个实际上是状态机的嵌套类。 只要客户端代码中的 foreach 循环继续进行,此类就会跟踪迭代器的位置。 将使用 foreach 语句从客户端代码中调用迭代器。 例如,您可以为类创建一个迭代器,该迭代器将按相反顺序返回元素,或在迭代器返回元素之前对每个元素执行操作。 在为类或结构创建迭代器时,您不必实现整个 阅读全文
posted @ 2012-08-05 17:02 tc庄稼汉 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 1.先看看它俩共同所属的命名空间System.Collections System.Collections 命名空间包含接口和类,这些接口和类定义各种对象(如列表、队列、位数组、哈希表和字典)的集合。类说明ArrayList使用大小会根据需要动态增加的数组来实现 IList 接口。BitArray管理位值的压缩数组,该值表示为布尔值,其中 true 表示位是打开的 (1),false 表示位是关闭的 (0)。CaseInsensitiveComparer比较两个对象是否相等,比较时忽略字符串的大小写。CaseInsensitiveHashCodeProvider已过时。 使用忽略字符串大小写. 阅读全文
posted @ 2012-08-05 13:50 tc庄稼汉 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露该对象内部的表示。迭代器为遍历不同的聚集结构提供如开始、下一个、是否结束、当前哪一项等统一的借口。迭代器模式结构图:Iterator类 1 /////////////////////////////////////////////////////////// 2 // Iterator.cs 3 // Implementation of the Class Iterator 4 // Generated by Enterprise Architect 5 // Created on: 23... 阅读全文
posted @ 2012-08-05 12:28 tc庄稼汉 阅读(147) 评论(0) 推荐(0) 编辑