1.ICollection接口
扩展了接口INumerable,扩展了属性Count,IsSynchronized和SyncRoot,另外还增加了方法CopyTo,在对象数组和对象的ICollection之间架起了桥梁。
2.Lists 和Ilist
IList扩展了ICollection,而ICollection扩展了IEnumerable。IList定义了许多直观的方法,如Add、Remove、Insert和Clear等;还有IsFixedSize、IsReadOnly和Item属性,其中Item属性使得类可以很方便的使用索引器的方式访问其中的元素。
3.字典 和 IDictionary
IDictionary扩展了ICollection,但不表示可以索引的一组对象,每个元素都是一个存储在 DictionaryEntry(结构) 对象中的关键字/值对集合。其Add方法也把关键字和值作为参数。Item属性索引器也按照关键字来索引。
4.散列表 Hashtable
散列表:表示键/值对的集合,这些键/值对根据键的哈希代码进行组织。Hashtable实现了IDictionary接口,在Hashtable中存储的是DictionaryEntry.而使用foreach语句时,需要集合中每个元素的类型。
5.有序列表 SortedList
与 Hashtable 类似,但它是按照关键字来排序的,其值可以通过数字索引来处理,与数组一样。可以使用indexOfKey方法获取关键字对应的索引号。构造SortedList时,可以使用默认构造函数,也可以使用IDictionary作为其参数。
6.Queue
先进先出集合。队列在按接收顺序存储消息方法非常有用,以便于进行顺序处理。
7.Stack
Stack于Queue相反,表示对象的简单的后进先出非泛型集合。