首页 > 代码库 > .net集合对象解惑篇
.net集合对象解惑篇
.Net中大量的集合对象是否曾让你头痛,那么现在就让我作为你的“导游”带着你走出来。帮助你在System.Collections名域中找到自己的方向。 集合提供了一种将任意对象格式化存储的方法,我们都知道在日常的程序设计中,它们是多么有帮助。接下来就随我找到它并认识它。
一、定义
从.NET的角度来看,一个集合可以被定义为一个实现了一个或多个System.Collections.ICollection、System.Collections.IDictionary和System.Collections.IList界面的对象。它用来格式化存储任意对象,从而让我们的数据更为灵活。
二、分类
根据以上定义,可以在System.Collections名域空间范围内的“内建”的集合分为三类:
(一)有序集合:只实现ICollection界面的集合,事实上的插入的顺序决定了对象从集合中被检索到的顺序,System.Collections.Stack类和System.Collections.Queue是两个ICollection集合的例子。
(二)索引集合:实现了IList界面的集合,他们的内容可以通过一个以零为基准的数字索引中检索到,就像数组一样。System.Collections.ArrayList对象是索引集合的一个例子。
(三)键值集合:实现了IDictionary界面的集合,包含了可以按照某些关联键值检索到的项目,IDictionary的内容通常以键值为基础按照某些形式进行排序,在检索时,这些内容可以按照排好序的枚举表示。
System.Collections.HashTable类实现了IDictionary的界面。
正如你所看到的,一个给定集合的功能是由专门的界面或它所实现的界面控制的,如果你对面向对象程序设计没有大量的接触,这一点看上去即使不是毫无意义,也会让人非常困惑。然而,你应当知道,以这种方式建立一个对象的功能,不仅给与了相似的对象一系列相似的方法签名,而且还允许在必要的时候将这些对象当作本质上相同的类来对待,这就是在面向对象程序设计中所说的多态性。
三、总结
以上只是一些简单的集合知识,在今后会多多补充。
.net集合对象解惑篇