SortedDictionary<TKey,TValue>是一个二叉搜索树,其中的元素根据键排序。该键类型必须实现IComparable<Tkey>接口。如果键的类型不能排序,则还可以创建一个实现IComparer<Tkey>接口的比较器,将比较器用作有序字典的构造函数的一个参数。
如前所述,SortedDictionary<TKey,TValue>和SortedList<TKey,TValue>的功能类似。但因为SortedList<TKey,TValue>实现为一个基于数组的列表,而SortedDictionary<TKeyk,TValue>类实现为一个字典,所以它们有不同的特征。
- SortedList<TKey,TValue>使用的内存比SortedDictionary<TKey,TValue>少。
- SortedDictionary<TKey,TValue>的元素插入和删除操作比较快。
- 在用已排好序的数组填充集合时,若不需要修改容量,SortedList<TKey,TValue>就比较快。
注:SortedList使用的内存比SortedDictionary少,但SortedDictionary在插入和删除未排序的数据时比较快。