Removing all entries from HybridDictionary in C#

A HybridDictionary in C# is part of the System.Collections.Specialized namespace that automatically switches between a ListDictionary and Hashtable based on the number of elements. To remove all entries from a HybridDictionary, you use the Clear() method.

Syntax

Following is the syntax for removing all entries from a HybridDictionary −

hybridDictionary.Clear();

Using Clear() Method

The Clear() method removes all key-value pairs from the HybridDictionary and sets the Count property to zero −

Example

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);
      
      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
Count of Key/value pairs in Dictionary2 (Updated) = 0

Clear() with Small Collections

The Clear() method works the same way regardless of whether the HybridDictionary is using its internal ListDictionary or Hashtable implementation −

Example

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

public class Demo {
   public static void Main() {
      HybridDictionary dict = new HybridDictionary();
      dict.Add("One", "Accessories");
      dict.Add("Two", "Pet Supplies");
      Console.WriteLine("HybridDictionary elements...");
      foreach(DictionaryEntry d in dict) {
         Console.WriteLine(d.Key + " " + d.Value);
      }
      Console.WriteLine("Count before Clear(): " + dict.Count);
      
      dict.Clear();
      Console.WriteLine("Count after Clear(): " + dict.Count);
      Console.WriteLine("Dictionary is empty: " + (dict.Count == 0));
   }
}

The output of the above code is −

HybridDictionary elements...
One Accessories
Two Pet Supplies
Count before Clear(): 2
Count after Clear(): 0
Dictionary is empty: True

Key Points

  • The Clear() method removes all elements and resets the Count to zero.

  • After calling Clear(), the HybridDictionary reverts to using ListDictionary internally.

  • The method has a time complexity of O(1) and is the most efficient way to remove all entries.

  • No exceptions are thrown even if the dictionary is already empty.

Conclusion

The Clear() method is the standard and most efficient way to remove all entries from a HybridDictionary in C#. It immediately removes all key-value pairs and resets the collection to an empty state, making it ready for new data.

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

146 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements