【何时使用泛型集合】
1、List<T> 是C++中的Vector<T>(特性一模一样),C#中的非泛型版本是 ArrayList。在泛型下,非泛型版本实际上已经没有存在的意义了。
当List<T>内存不足时,List<T>会申请一块2倍于现有内存的空间,然后将原有内存拷贝到新空间下。所以,避免性能问题的一个方法是直接预分配好足够的空间,以避免动态分配空间。
2、Dictionary<TKey, TValue>是字典。
3、Collection<T>是集合。
5、 SortedList<TKey, TValue>按照键值进行排序。
6、LinkedList<T> 是一个通用链接列表,它提供运算复杂度为 O(1) 的插入和移除操作。对应于C++中的List。
7、SortedDictionary<TKey, TValue> 是一个排序的字典,其插入和检索操作的运算复杂度为 O(log n),这使得它成为 SortedList<TKey, TValue> 的十分有用的替代类型。
8、KeyedCollection<TKey, TItem> 是介于列表和字典之间的混合类型,它提供了一种存储包含自己键的对象的方法。
SortedList对于SortedDictionary: http://msdn.microsoft.com/zh-cn/library/ms132319(v=vs.90).aspx
参考:http://msdn.microsoft.com/zh-cn/library/ms172181(v=vs.90).aspx
时间: 2024-11-05 12:35:06