ICollection 接口是 System.Collections 命名空间中类的基接口.
IDictionary和IList是扩展了ICollection的更为专业的接口。IDictionary实现是键值对的集合。IList实现是值的集合,其成员可通过索引器访问
1.只实现了ICollection 接口的集合有:
1.1.Queue。先进先出队列。泛型版Queue<T>。
1.2.Stack。后进先出栈。泛型版Stack<T>。
2.实现了IList的集合有:
2.1.Array 。充当公共语言运行时中所有数组的基类.比如int[],string[]。
2.2.ArrayList。其大小根据实际需要动态增加。
2.3.LIst<T>。强类型列表。
2.4.StringCollection.
3.实现了IDictionary的集合有:
3.1.Dictionary<TKey,TValue>。字典。公共静态成员是线程安全的。实例成员线程安全不能保证。
3.2.Hashtable。可由多个读取器线程或一个写入线程使用.
3.3.SortedList。SortedList索引顺序基于Key的排序顺序。当插入和移除的时候,索引会相应的调整。由于要进行排序,所以在 SortedList 对象上操作比在 HashTable对象上操作要慢。
但索引器的存在使SortedList更有灵活性。
3.4.ListDictory。这是使用单链接列表的 IDictory的简单实现。 如果元素数量是 10 或小于 10,它比 HashTable小,且更快。
3.5.HybridDictory。建议将该类用于字典中的元素数量未知的情况。 它利用了 ListDictory处理小集合时性能改善的优点,同时也可灵活地切换到处理较大集合时能力比 ListDictory更好的 Hashtable.一句话在集合较小时使用 ListDictory,然后在集合变大时切换到 Hashtable。
3.6.StringDictory.