C # Hashtable mit Beispielen

Inhaltsverzeichnis:

Anonim

Was ist Hashtable in C #?

Eine Hash-Tabelle ist eine spezielle Sammlung, in der Schlüsselwertelemente gespeichert werden. Anstatt nur einen Wert wie den Stapel, die Array-Liste und die Warteschlange zu speichern, werden in der Hash-Tabelle zwei Werte gespeichert. Diese beiden Werte bilden ein Element der Hash-Tabelle.

Im Folgenden finden Sie einige Beispiele dafür, wie Werte einer Hash-Tabelle aussehen könnten.

{ "001" , ".Net" }{ "002" , ".C#" }{ "003" , "ASP.Net" }

Oben haben wir 3 Schlüsselwertpaare. Die Schlüssel jedes Elements sind 001, 002 bzw. 003. Die Werte jedes Schlüsselwertpaars sind ".Net", "C #" bzw. "ASP.Net".

Schauen wir uns die für die Hashtable-Sammlung verfügbaren Vorgänge genauer an.

Erklärung der Hashtabelle

Die Deklaration einer Hashtabelle ist unten dargestellt. Mit Hilfe des Hashtable-Datentyps wird eine Hashtable erstellt. Das Schlüsselwort "new" wird verwendet, um ein Objekt einer Hashtabelle zu erstellen. Das Objekt wird dann der Variablen ht zugeordnet.

Hashtable ht = new Hashtable()

Hinzufügen von Elementen zur Hashtabelle

Mit der Add-Methode wird der Warteschlange ein Element hinzugefügt. Die allgemeine Syntax der Anweisung ist unten angegeben

HashTable.add("key","value")

Beispiel 1:

Denken Sie daran, dass jedes Element der Hash-Tabelle aus zwei Werten besteht, von denen einer der Schlüssel und der andere der Wert ist.

Lassen Sie uns nun sehen, wie dies auf Codeebene funktioniert. Der gesamte unten genannte Code wird in unsere Konsolenanwendung geschrieben.

Der Code wird in unsere Program.cs-Datei geschrieben. Im folgenden Programm werden wir den Code schreiben, um zu sehen, wie wir die oben genannten Methoden verwenden können.

In unserem Beispiel sehen wir uns zunächst nur an, wie wir eine Hashtabelle erstellen, der Hashtabelle Elemente hinzufügen und sie entsprechend anzeigen können.

using System;using System.Collections;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Program{static void Main(string[] args){Hashtable ht = new Hashtable();ht.Add("001",".Net");ht.Add("002","C#");ht.Add("003","ASP.Net");ICollection keys = ht.Keys;foreach (String k in keys){Console.WriteLine(ht[k]);}Console.ReadKey();}}} 

Code Erläuterung: -

  1. Zuerst deklarieren wir die Variable hashtable mithilfe des Datentyps Hashtable mit dem Schlüsselwort "New". Der Name der definierten Variablen lautet 'ht'.
  2. Anschließend fügen wir der Hash-Tabelle mithilfe der Add-Methode Elemente hinzu. Denken Sie daran, dass wir sowohl einen Schlüssel als auch ein Wertelement hinzufügen müssen, wenn Sie der Hashtabelle etwas hinzufügen.
  3. Es gibt keine direkte Möglichkeit, die Elemente einer Hash-Tabelle anzuzeigen.
  • Um die Hashtabelle anzuzeigen, müssen wir zuerst die Liste der Schlüssel (001, 002 und 003) aus der Hash-Tabelle abrufen.
  • Dies erfolgt über die ICollection-Schnittstelle. Dies ist ein spezieller Datentyp, mit dem die Schlüssel einer Hashtabellensammlung gespeichert werden können. Anschließend weisen wir die Schlüssel der Hashtable-Sammlung der Variablen 'keys' zu.
  1. Als nächstes erhalten wir für jeden Schlüsselwert den zugehörigen Wert in der Hashtabelle unter Verwendung der Anweisung ht [k].

Wenn der obige Code richtig eingegeben und das Programm ausgeführt wird, wird die folgende Ausgabe angezeigt.

Ausgabe:

Schauen wir uns einige weitere Methoden an, die für Hash-Tabellen verfügbar sind.

Enthält Schlüssel

Diese Methode wird verwendet, um festzustellen, ob ein Schlüssel in der Hashtabelle vorhanden ist. Nachfolgend finden Sie die allgemeine Syntax dieser Anweisung. Die Anweisung gibt true zurück, wenn der Schlüssel vorhanden ist, andernfalls gibt sie den Wert false zurück.

Hashtable.Containskey(key)

Enthält Wert

Diese Methode wird verwendet, um festzustellen, ob in der Hashtabelle ein Wert vorhanden ist. Nachfolgend finden Sie die allgemeine Syntax dieser Anweisung. Die Anweisung gibt true zurück, wenn der Wert vorhanden ist, andernfalls gibt sie den Wert false zurück.

Hashtable.ContainsValue(value)

Beispiel 2:

Lassen Sie uns den Code in unserer Konsolenanwendung ändern, um zu zeigen, wie wir die Methoden "Containskey" und "ContainsValue" verwenden können.

using System;using System.Collections;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Program{static void Main(string[] args){Hashtable ht = new Hashtable();ht.Add("001",".Net");ht.Add("002","C#");ht.Add("003","ASP.Net");Console.WriteLine(ht.ContainsKey("001"));Console.WriteLine(ht.ContainsValue("C#"));Console.ReadKey();}}}

Code Erläuterung: -

  1. Zuerst verwenden wir die ContainsKey-Methode, um festzustellen, ob der Schlüssel in der Hashtabelle vorhanden ist. Diese Methode gibt true zurück, wenn der Schlüssel in der Hashtabelle vorhanden ist. Diese Methode sollte true zurückgeben, da der Schlüssel in der Hashtabelle vorhanden ist.
  2. Wir verwenden dann die ContainsValue-Methode, um festzustellen, ob der Wert in der Hashtabelle vorhanden ist. Diese Methode gibt 'true' zurück, da der Wert in der Hashtabelle vorhanden ist.

Wenn der obige Code richtig eingegeben und das Programm ausgeführt wird, wird die folgende Ausgabe angezeigt.

Ausgabe:

An der Ausgabe können Sie deutlich erkennen, dass sowohl der Schlüssel als auch der gesuchte Wert in der Hash-Tabelle vorhanden sind.

Zusammenfassung

  • In einer Hashtabelle werden Elemente gespeichert, die aus Schlüsselwertpaaren bestehen. Um auf den Wert eines Elements zugreifen zu können, müssen Sie den Schlüssel des Elements kennen.