Check the HybridDictionary for a specific key in C#

The HybridDictionary class in C# provides the Contains() method to check whether a specific key exists in the collection. This method returns true if the key is found, otherwise false. HybridDictionary is part of the System.Collections.Specialized namespace and automatically switches between a ListDictionary and Hashtable based on the number of entries for optimal performance.

Syntax

Following is the syntax for checking if a key exists in HybridDictionary −

public virtual bool Contains(object key)

Parameters

The Contains() method accepts the following parameter −

  • key − The key to locate in the HybridDictionary.

Return Value

The method returns true if the HybridDictionary contains an entry with the specified key; otherwise, false.

Using Contains() Method

The following example demonstrates how to use the Contains() method to check for specific keys in a HybridDictionary −

using System;
using System.Collections;
using System.Collections.Specialized;

public class Demo {
   public static void Main() {
      HybridDictionary dict = new HybridDictionary(5);
      dict.Add("A", "AB");
      dict.Add("B", "BC");
      dict.Add("C", "DE");
      dict.Add("D", "FG");
      dict.Add("E", "HI");
      
      Console.WriteLine("Key/Value pairs...");
      foreach(DictionaryEntry d in dict)
         Console.WriteLine("Key = " + d.Key + ", Value = " + d.Value);
      
      Console.WriteLine("Does HybridDictionary contains the key C? = " + dict.Contains("C"));
   }
}

The output of the above code is −

Key/Value pairs...
Key = A, Value = AB
Key = B, Value = BC
Key = C, Value = DE
Key = D, Value = FG
Key = E, Value = HI
Does HybridDictionary contains the key C? = True

Checking Multiple Keys

The following example demonstrates checking for multiple keys, including keys that don't exist in the HybridDictionary −

using System;
using System.Collections;
using System.Collections.Specialized;

public class Demo {
   public static void Main() {
      HybridDictionary dict1 = new HybridDictionary();
      dict1.Add("A", "Books");
      dict1.Add("B", "Electronics");
      dict1.Add("C", "Smart Wearables");
      dict1.Add("D", "Pet Supplies");
      dict1.Add("E", "Clothing");
      dict1.Add("F", "Footwear");
      
      Console.WriteLine("HybridDictionary1 elements...");
      foreach(DictionaryEntry d in dict1) {
         Console.WriteLine(d.Key + " " + d.Value);
      }
      Console.WriteLine("Count of Key/value pairs in Dictionary1 = " + dict1.Count);
      
      HybridDictionary dict2 = new HybridDictionary();
      dict2.Add("1", "One");
      dict2.Add("2", "Two");
      dict2.Add("3", "Three");
      dict2.Add("4", "Four");
      dict2.Add("5", "Five");
      dict2.Add("6", "Six");
      
      Console.WriteLine("\nHybridDictionary2 elements...");
      foreach(DictionaryEntry d in dict2) {
         Console.WriteLine(d.Key + " " + d.Value);
      }
      Console.WriteLine("Count of Key/value pairs in Dictionary2 = " + dict2.Count);
      Console.WriteLine("Does HybridDictionary2 contains the key "3"? = " + dict2.Contains("3"));
      Console.WriteLine("Does HybridDictionary2 contains the key "10"? = " + dict2.Contains("10"));
      
      dict2.Clear();
      Console.WriteLine("Count of Key/value pairs in Dictionary2 (Updated) = " + dict2.Count);
   }
}

The output of the above code is −

HybridDictionary1 elements...
A Books
B Electronics
C Smart Wearables
D Pet Supplies
E Clothing
F Footwear
Count of Key/value pairs in Dictionary1 = 6

HybridDictionary2 elements...
1 One
2 Two
3 Three
4 Four
5 Five
6 Six
Count of Key/value pairs in Dictionary2 = 6
Does HybridDictionary2 contains the key "3"? = True
Does HybridDictionary2 contains the key "10"? = False
Count of Key/value pairs in Dictionary2 (Updated) = 0

Key Considerations

  • The Contains() performs case-sensitive key comparison unless the HybridDictionary was created with a case-insensitive comparer.

  • HybridDictionary automatically switches its internal implementation based on size − uses ListDictionary for small collections and Hashtable for larger ones.

  • The method has different performance characteristics depending on the current internal implementation being used.

Conclusion

The Contains() method provides an efficient way to check for key existence in a HybridDictionary. It returns a boolean value indicating whether the specified key is present, making it useful for conditional operations and key validation before accessing dictionary values.

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

166 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements