Working with Hashtable and Dictionary in C#


Hashtable

Hashtable class represents a collection of key-and-value pairs that are organized based on the hash code of the key. It uses the key to access the elements in the collection.

Some of the commonly used methods in Hashtable class are −

Sr.No.Method & Description
1public virtual void Add(object key, object value);
Adds an element with the specified key and value into the Hashtable.
2public virtual void Clear();
Removes all elements from the Hashtable.
3public virtual bool ContainsKey(object key);
Determines whether the Hashtable contains a specific key.
4public virtual bool ContainsValue(object value);
Determines whether the Hashtable contains a specific value.

The following is an example showing the usage of Hashtable class in C# −

Example

 Live Demo

using System;
using System.Collections;

namespace Demo {
   class Program {
      static void Main(string[] args) {
         Hashtable ht = new Hashtable();

         ht.Add("D01", "Finance");
         ht.Add("D02", "HR");
         ht.Add("D03", "Operations");

         if (ht.ContainsValue("Marketing")) {
            Console.WriteLine("This department name is already in the list");
         } else {
            ht.Add("D04", "Marketing");
         }

         ICollection key = ht.Keys;

         foreach (string k in key) {
            Console.WriteLine(k + ": " + ht[k]);
         }
         Console.ReadKey();
      }
   }
}

Output

D04: Marketing
D02: HR
D03: Operations
D01: Finance

Dictionary

Dictionary is a collection of keys and values in C#. Dictionary <TKey, TValue> is included in the System.Collection.Generics namespace.

The following are the methods −

Sr.No.Methods & Description
1Add
Add key-value pairs in Dictionary
2Clear()
Remove all keays and values
3Remove
Removes the element with the specified key.
4ContainsKey
Checks whether the specified key exists in Dictionary <TKey, TValue>.
5ContainsValue
Checks whether the specified key value exists in Dictionary <TKey, TValue>.
6Count
Count the number of key-valu pairs.
7Clear
Removes all the elements from Dictionary <TKey, TValue>.

Let us see how to add elements into a Dictionary and display the count −

Example

using System;
using System.Collections.Generic;

public class Demo {
   public static void Main() {

      IDictionary <int, int> d = new Dictionary <int, int> ();
      d.Add(1,44);
      d.Add(2,34);
      d.Add(3,66);
      d.Add(4,47);
      d.Add(5,76);

      Console.WriteLine(d.Count);
   }
}

Updated on: 20-Jun-2020

285 Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements