C # - Classe Hashtable

La classe Hashtable représente une collection de key-and-value pairsqui sont organisés en fonction du code de hachage de la clé. Il utilise la clé pour accéder aux éléments de la collection.

Une table de hachage est utilisée lorsque vous devez accéder aux éléments à l'aide de key, et vous pouvez identifier une valeur clé utile. Chaque élément de la table de hachage a une paire clé / valeur. La clé est utilisée pour accéder aux éléments de la collection.

Méthodes et propriétés de la classe Hashtable

Le tableau suivant répertorie certains des properties du Hashtable classe -

N ° Sr. Propriété et description
1

Count

Obtient le nombre de paires clé-valeur contenues dans le Hashtable.

2

IsFixedSize

Obtient une valeur indiquant si le Hashtable a une taille fixe.

3

IsReadOnly

Obtient une valeur indiquant si le Hashtable est en lecture seule.

4

Item

Obtient ou définit la valeur associée à la clé spécifiée.

5

Keys

Obtient une ICollection contenant les clés de la table de hachage.

6

Values

Obtient un ICollection contenant les valeurs de Hashtable.

Le tableau suivant répertorie certains des methods du Hashtable classe -

N ° Sr. Méthode et description
1

public virtual void Add(object key, object value);

Ajoute un élément avec la clé et la valeur spécifiées dans la table de hachage.

2

public virtual void Clear();

Supprime tous les éléments de la table de hachage.

3

public virtual bool ContainsKey(object key);

Détermine si la table de hachage contient une clé spécifique.

4

public virtual bool ContainsValue(object value);

Détermine si la table de hachage contient une valeur spécifique.

5

public virtual void Remove(object key);

Supprime l'élément avec la clé spécifiée de la table de hachage.

Exemple

L'exemple suivant illustre le concept -

using System;
using System.Collections;

namespace CollectionsApplication {
   class Program {
      static void Main(string[] args) {
         Hashtable ht = new Hashtable();
         
         ht.Add("001", "Zara Ali");
         ht.Add("002", "Abida Rehman");
         ht.Add("003", "Joe Holzner");
         ht.Add("004", "Mausam Benazir Nur");
         ht.Add("005", "M. Amlan");
         ht.Add("006", "M. Arif");
         ht.Add("007", "Ritesh Saikia");
         
         if (ht.ContainsValue("Nuha Ali")) {
            Console.WriteLine("This student name is already in the list");
         } else {
            ht.Add("008", "Nuha Ali");
         }
         
         // Get a collection of the keys.
         ICollection key = ht.Keys;
         
         foreach (string k in key) {
            Console.WriteLine(k + ": " + ht[k]);
         }
         Console.ReadKey();
      }
   }
}

Lorsque le code ci-dessus est compilé et exécuté, il produit le résultat suivant -

001: Zara Ali
002: Abida Rehman
003: Joe Holzner
004: Mausam Benazir Nur
005: M. Amlan
006: M. Arif
007: Ritesh Saikia
008: Nuha Ali