#unity/日常积累

一.介绍:

SortedDictionary<key,value>,从字面意思不难看出来是有序字典

SortedList<key,value>,有序列表

二.使用:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
            //SortedDictionary
            SortedDictionary<int, string> sortDic = new SortedDictionary<int, string>();
            sortDic[2] = "2";
            sortDic[1] = "1";
            sortDic[9] = "9";
            sortDic[4] = "4";
            Console.WriteLine("SortedDictionary:");
            foreach (var item in sortDic)
            {
                Console.WriteLine(item.Key);
            }
 
            //Dictionary
            Dictionary<int, string> Dic = new Dictionary<int, string>();
            Dic[2] = "2";
            Dic[1] = "1";
            Dic[9] = "9";
            Dic[4] = "4";
            Console.WriteLine("Dictionary:");
            foreach (var item in Dic)
            {
                Console.WriteLine(item.Key);
            }
 
            //SortedList
            SortedList<int, string> sortList = new SortedList<int, string>();
            sortList[2] = "2";
            sortList[1] = "1";
            sortList[9] = "9";
            sortList[4] = "4";
            Console.WriteLine("sortList:");
            foreach (var item in sortList)
            {
                Console.WriteLine(item.Key);
            }

控制台输出=>可以看出普通Dictionary,没有默认排序,SortedDictionary和SortedList则默认实现字典排序

三.SortedDictionary<Key,Value>、SortedList<Key,Value>的差异: SortedDictionary<Key,Value>使用的内存比SortedList<Key,Value>多 2.SortedDictionary<Key,Value>删除比较快,插入有序数据时SortedList<Key,Value>较快,而插入无序数据时SortedList<Key,Value>非常慢,查询SortedList<Key,Value>比SortedDictionary<Key,Value>较快。(亲测,环境net4.0),SortedList移除特别慢,耗时约为SortedDictionary的80倍。