要将容量设置为SortedList对象中元素的实际数量,代码如下-
using System; using System.Collections; public class Demo { public static void Main(String[] args) { SortedList sortedList = new SortedList(); sortedList.Add("A", "1"); sortedList.Add("B", "2"); sortedList.Add("C", "3"); sortedList.Add("D", "4"); sortedList.Add("E", "5"); sortedList.Add("F", "6"); sortedList.Add("G", "7"); sortedList.Add("H", "8"); sortedList.Add("I", "9"); sortedList.Add("J", "10"); Console.WriteLine("SortedList elements..."); foreach(DictionaryEntry d in sortedList) { Console.WriteLine("Key = "+d.Key + ", Value = " + d.Value); } Console.WriteLine("\nEnumerator to iterate through the SortedList..."); IDictionaryEnumerator demoEnum = sortedList.GetEnumerator(); while (demoEnum.MoveNext()) Console.WriteLine("Key = " + demoEnum.Key + ", Value = "+ demoEnum.Value); Console.WriteLine("Count of SortedList key-value pairs = "+sortedList.Count); Console.WriteLine("Capacity of SortedList = "+sortedList.Capacity); sortedList.TrimToSize(); Console.WriteLine("Capacity of SortedList (Updated) = "+sortedList.Capacity); } }
输出结果
这将产生以下输出-
SortedList elements... Key = A, Value = 1 Key = B, Value = 2 Key = C, Value = 3 Key = D, Value = 4 Key = E, Value = 5 Key = F, Value = 6 Key = G, Value = 7 Key = H, Value = 8 Key = I, Value = 9 Key = J, Value = 10 Enumerator to iterate through the SortedList... Key = A, Value = 1 Key = B, Value = 2 Key = C, Value = 3 Key = D, Value = 4 Key = E, Value = 5 Key = F, Value = 6 Key = G, Value = 7 Key = H, Value = 8 Key = I, Value = 9 Key = J, Value = 10 Count of SortedList key-value pairs = 10 Capacity of SortedList = 16 Capacity of SortedList (Updated) = 10
现在让我们来看另一个示例-
using System; using System.Collections; public class Demo { public static void Main(String[] args) { SortedList list1 = new SortedList(); list1.Add("One", 1); list1.Add("Two ", 2); list1.Add("Three ", 3); list1.Add("Four", 4); list1.Add("Five", 5); list1.Add("Six", 6); list1.Add("Seven ", 7); list1.Add("Eight ", 8); list1.Add("Nine", 9); list1.Add("Ten", 10); Console.WriteLine("SortedList1 elements..."); foreach(DictionaryEntry d in list1) { Console.WriteLine(d.Key + " " + d.Value); } Console.WriteLine("\nList of keys...SortedList1"); IList list = list1.GetKeyList(); foreach(string res in list) Console.WriteLine(res); Console.WriteLine("Capacity of SortedList1 = "+list1.Capacity); list1.TrimToSize(); Console.WriteLine("Capacity of SortedList1 (Updated) = "+list1.Capacity); SortedList list2 = new SortedList(); list2.Add("A", "Accessories"); list2.Add("B", "Books"); list2.Add("C", "Smart Wearable Tech"); list2.Add("D", "Home Appliances"); Console.WriteLine("\nSortedList2 elements..."); foreach(DictionaryEntry d in list2) { Console.WriteLine(d.Key + " " + d.Value); } Console.WriteLine("\nList of keys...SortedList2"); list = list2.GetKeyList(); foreach(string res in list) Console.WriteLine(res); Console.WriteLine("Capacity of SortedList2 = "+list2.Capacity); list2.TrimToSize(); Console.WriteLine("Capacity of SortedList2 (Updated) = "+list2.Capacity); } }
输出结果
这将产生以下输出-
SortedList1 elements... Eight 8 Five 5 Four 4 Nine 9 One 1 Seven 7 Six 6 Ten 10 Three 3 Two 2 List of keys...SortedList1 Eight Five Four Nine One Seven Six Ten Three Two Capacity of SortedList1 = 16 Capacity of SortedList1 (Updated) = 10 SortedList2 elements... A Accessories B Books C Smart Wearable Tech D Home Appliances List of keys...SortedList2 A B C D Capacity of SortedList2 = 16 Capacity of SortedList2 (Updated) = 4 L