Open In App

C# | Search in a SortedList object

Last Updated : 11 Oct, 2018
Comments
Improve
Suggest changes
Like Article
Like
Report
SortedList class is a collection of (key, value) pairs which are sorted according to keys. Those pairs can be accessible by key and as well as by index(zero-based indexing). This comes under System.Collections namespace. SortedList.ContainsKey(Object) method is used to check whether a SortedList object contains a specific key or not. Properties:
  • A SortedList element can be accessed by its key or by its index.
  • A SortedList object internally maintains two arrays to store the elements of the list, i.e, one array for the keys and another array for the associated values.
  • A key cannot be null, but a value can be.
  • The capacity of a SortedList object is the number of elements the SortedList can hold.
  • A SortedList does not allow duplicate keys.
  • Operations on a SortedList object tend to be slower than operations on a Hashtable object because of the sorting.
  • Elements in this collection can be accessed using an integer index. Indexes in this collection are zero-based.
Syntax:
public virtual bool ContainsKey (object key);
Here, key is the key to locate in the SortedList object. Return Value: This method will return True if the SortedList object contains an element with the specified key otherwise it returns False. Exceptions:
  • ArgumentNullException : If the key is null.
  • InvalidOperationException : If the comparer throws an exception.
Below given are some examples to understand the implementation in a better way: Example 1: CSHARP
// C# code to check if a SortedList
// object contains a specific key
using System;
using System.Collections;

class GFG {

    // Driver code
    public static void Main()
    {

        // Creating an SortedList
        SortedList mySortedList = new SortedList();

        // Adding elements to SortedList
        mySortedList.Add("h", "Hello");
        mySortedList.Add("g", "Geeks");
        mySortedList.Add("f", "For");
        mySortedList.Add("n", "Noida");

        // Checking if a SortedList object
        // contains a specific key
        Console.WriteLine(mySortedList.ContainsKey("g"));
    }
}
Output:
True
Example 2: CSHARP
// C# code to check if a SortedList
// object contains a specific key
using System;
using System.Collections;

class GFG {

    // Driver code
    public static void Main()
    {

        // Creating an SortedList
        SortedList mySortedList = new SortedList();

        // Adding elements to SortedList
        mySortedList.Add("h", "Hello");
        mySortedList.Add("g", "Geeks");
        mySortedList.Add("f", "For");
        mySortedList.Add("n", "Noida");

        // Checking if a SortedList object
        // contains a specific key
        // It should throw ArgumentNullException
        // as the Key can not be null
        Console.WriteLine(mySortedList.ContainsKey(null));
    }
}
Error:
Unhandled Exception: System.ArgumentNullException: Key cannot be null. Parameter name: key
Note: This method uses a binary search algorithm, therefore, this method is an O(log n) operation, where n is Count. Reference:

Next Article

Similar Reads