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.

Updated on: 2026-03-17T07:04:36+05:30

133 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements