Article Categories
- All Categories
-
Data Structure
-
Networking
-
RDBMS
-
Operating System
-
Java
-
MS Excel
-
iOS
-
HTML
-
CSS
-
Android
-
Python
-
C Programming
-
C++
-
C#
-
MongoDB
-
MySQL
-
Javascript
-
PHP
-
Economics & Finance
Getting the keys in a SortedList object C#
The SortedList class in C# stores key-value pairs sorted by the keys. To retrieve all the keys from a SortedList object, you use the Keys property, which returns an ICollection containing all the keys in sorted order.
Syntax
Following is the syntax for getting keys from a SortedList −
SortedList sortedList = new SortedList(); ICollection keys = sortedList.Keys;
The Keys property returns an ICollection that can be iterated using a foreach loop −
foreach(string key in keys) {
Console.WriteLine(key);
}
Using Keys Property with String Keys
This example demonstrates how to retrieve keys from a SortedList containing string keys and string values −
using System;
using System.Collections;
public class Demo {
public static void Main(String[] args) {
SortedList list = new SortedList();
list.Add("One", "Finance");
list.Add("Two", "Marketing");
list.Add("Three", "Sales");
list.Add("Four", "Purchase");
list.Add("Five", "Operations");
list.Add("Six", "IT");
Console.WriteLine("SortedList elements...");
foreach(DictionaryEntry d in list) {
Console.WriteLine(d.Key + " " + d.Value);
}
Console.WriteLine("\nIndex at key One = " + list.IndexOfKey("One"));
ICollection col = list.Keys;
Console.WriteLine("\nCollection of Keys...");
foreach(string res in col)
Console.WriteLine(res);
}
}
The output of the above code is −
SortedList elements... Five Operations Four Purchase One Finance Six IT Three Sales Two Marketing Index at key One = 2 Collection of Keys... Five Four One Six Three Two
Using Keys Property with Mixed Data Types
This example shows working with multiple SortedList objects containing different data types −
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);
}
ICollection col = list1.Keys;
Console.WriteLine("\nCollection of Keys in List1...");
foreach(string res in col)
Console.WriteLine(res);
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);
}
col = list2.Keys;
Console.WriteLine("\nCollection of Keys in List2...");
foreach(string res in col)
Console.WriteLine(res);
}
}
The output of the above code is −
SortedList1 elements... Eight 8 Five 5 Four 4 Nine 9 One 1 Seven 7 Six 6 Ten 10 Three 3 Two 2 Collection of Keys in List1... Eight Five Four Nine One Seven Six Ten Three Two SortedList2 elements... A Accessories B Books C Smart Wearable Tech D Home Appliances Collection of Keys in List2... A B C D
Key Properties and Methods
| Property/Method | Description |
|---|---|
| Keys | Returns an ICollection containing all keys in sorted order |
| IndexOfKey(key) | Returns the zero-based index of the specified key |
| ContainsKey(key) | Determines whether the SortedList contains a specific key |
Conclusion
The Keys property of SortedList returns an ICollection containing all keys in alphabetically sorted order. This collection can be iterated using foreach loops to access individual keys, making it useful for scenarios where you need to process only the keys from your sorted data structure.
