Setting the capacity to the actual number of elements in a SortedList object in C#?


To set the capacity to the actual number of elements in a SortedList object, the code is as follows −

Example

 Live Demo

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("
Enumerator 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);    } }

Output

This will produce the following output −

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

Example

Let us now see another example −

 Live Demo

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("
List 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("
SortedList2 elements...");       foreach(DictionaryEntry d in list2) {          Console.WriteLine(d.Key + " " + d.Value);       }       Console.WriteLine("
List 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);    } }

Output

This will produce the following output −

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

Updated on: 16-Dec-2019

60 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements