Heim  >  Artikel  >  Backend-Entwicklung  >  So fügen Sie Elemente zu einer Hash-Tabellensammlung in C# hinzu

So fügen Sie Elemente zu einer Hash-Tabellensammlung in C# hinzu

王林
王林nach vorne
2023-09-12 09:49:021069Durchsuche

如何在 C# 中向哈希表集合添加项目

Wir haben die Grundlagen von Hash-Tabellen besprochen. Hash-Tabellensammlungen in C# werden zum Speichern von Schlüssel-Wert-Paaren verwendet, wobei jedes Schlüssel-Wert-Paar basierend auf dem Hash-Code des Schlüssels organisiert wird. Der Hash-Code wird mithilfe einer Hash-Code-Funktion berechnet. Intern verwenden Hash-Tabellen Buckets zum Speichern von Daten. Ein Bucket ist nichts anderes als eine Reihe virtueller Elemente in einer Hash-Tabelle. Jedem Bucket ist ein Hash-Code zugeordnet.

Programmiertechnisch gesehen ähnelt eine Hash-Tabelle einem Wörterbuchobjekt, aber im Gegensatz zu einem Wörterbuchobjekt kann eine Hash-Tabelle Objekte unterschiedlicher Datentypen speichern. In Bezug auf die Leistung weisen Hash-Tabellen eine geringere Leistung auf, da die Datenelemente von Hash-Tabellen Objekte sind. Um Werte aus einer Hash-Tabelle zu speichern und abzurufen, muss daher das Ein- und Auspacken von Objekten durchgeführt werden.

In diesem Artikel besprechen wir, wie man Elemente zu einer Hash-Tabellensammlung hinzufügt.

Wie füge ich Elemente zu einer Hash-Tabellensammlung hinzu?

Die

hashtable-Sammlung in C# wird mithilfe der Hashtable-Klasse implementiert. Diese Klasse stellt verschiedene Methoden bereit, um verschiedene Operationen an der Hash-Tabelle durchzuführen. Eine der Methoden ist Add().

Die

Add()-Methode der Hash-Tabellenklasse wird verwendet, um ein Element mit dem angegebenen Schlüssel und seinem entsprechenden Wert in der Hash-Tabelle hinzuzufügen. Beim Hinzufügen von Schlüssel-Wert-Paaren zu einer Hash-Tabelle sollten wir sicherstellen, dass die Schlüssel nicht dupliziert oder leer sind, da Hash-Tabellen nur nicht leere und eindeutige Schlüssel zulassen.

In der Hash-Tabellensammlung von C# können wir Schlüssel/Wert-Paarelemente verschiedener Datentypen haben.

Jetzt kommen wir zur Add()-Methode.

Der allgemeine Prototyp der Add()-Methode einer Hash-Tabellensammlung ist unten angegeben.

Grammatik

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

Parameter

  • Key – Der angegebene Schlüssel (Typ System.Object) des hinzugefügten Elements. Sollte ungleich Null sein.

  • Value – Der angegebene Wert des Elements (Typ System.Object) Dieser Wert kann null sein.

Ausnahme: Diese Methode löst die folgende Ausnahme aus.

  • ArgumentNullException − wenn der Schlüssel null ist.

  • ArgumentException − Ein Element mit demselben Schlüssel existiert bereits.

  • NotSupportedException − Die Hash-Tabelle hat eine feste Größe oder ist schreibgeschützt.

Wenn wir ein Hash-Tabellenobjekt haben, das wie folgt deklariert ist -

Hashtable hshTable = new Hashtable();

Wir können diesem Hash-Tabellenobjekt dann ein Element hinzufügen, indem wir die Add()-Methode verwenden, wie unten gezeigt -

hshTable.Add("msg", "charVal");

Da Hash-Tabellen Elemente gemischter Datentypen zulassen, können wir auch numerische Werte in derselben Hash-Tabelle hinzufügen -

hshTable.Add(1, 2022);

Zusätzlich zur Verwendung der Add()-Methode können wir der Hash-Tabelle auch direkt Werte zuweisen. Um beispielsweise ein Element mit Schlüssel = 2 hinzuzufügen, können wir einfach schreiben:

hshTable[3] = "three";

Die obige Anweisung erstellt ein Schlüssel-Wert-Paar (3, „drei“) in der Hash-Tabelle.

Programmierbeispiel für das Hinzufügen von Elementen zu einer Hash-Tabellensammlung

Das folgende Programm zeigt, wie man mit der Add()-Methode eine Hash-Tabelle aus verschiedenen Elementen erstellt.

Beispiel 1

using System;
using System.Collections;
class Program {
   static void Main(string[] args) {
      Hashtable mixedHashTable = new Hashtable();
      //add method
      mixedHashTable.Add("msg", "Collection");
      mixedHashTable.Add("site", "HashTable");
      mixedHashTable.Add(1, 3.14);
      mixedHashTable.Add(2, null);

      //assign value to the key
      mixedHashTable[3] = "Tutorial";

      // Add method throws an exception if the key already exists in //hashtable
      try {
         mixedHashTable.Add(2, 750);
      } catch {
         Console.WriteLine("Hashtable already has an element with Key = '2'.");
      }
      Console.WriteLine("*********HashTable Elements********");
      // It will return elements as Key-Value Pair.
      foreach (DictionaryEntry elem in mixedHashTable) {
         Console.WriteLine("Key = {0}, Value = {1}", elem.Key, elem.Value);
      }
      Console.ReadLine();
   }
}

Das obige Programm erstellt zunächst ein Hash-Tabellenobjekt mit dem Standardkonstruktor. Anschließend werden mithilfe der Methode Add() verschiedene Elemente zur Hash-Tabelle hinzugefügt. Wir können der Hash-Tabelle auch Elemente durch direkte Zuweisung hinzufügen. Das obige Programm fügt Schlüssel-Wert-Paare verschiedener Datentypen zu einer Hash-Tabelle hinzu. Verwenden Sie dann einen Iterator, um die Elemente der Hash-Tabelle einzeln anzuzeigen.

Ausgabe

Die Ausgabe des obigen Beispiels sieht so aus -

Hashtable already has an element with Key = '2'.
*********HashTable Elements********
Key = 2, Value = 
Key = msg, Value = Collection
Key = 3, Value = Tutorial
Key = site, Value = HashTable
Key = 1, Value = 3.14

Die Ausgabe zeigt alle Schlüssel-Wert-Paare, die wir der Hash-Tabelle hinzugefügt haben.

Nehmen wir ein weiteres Beispiel für das Hinzufügen von Elementen zu einer Hash-Tabelle. Das Verfahren ist wie folgt.

Beispiel 2

using System;
using System.Collections;
class hTable {
   // Driver code
   public static void Main() {
      // Creating a Hashtable
      Hashtable strHashTable = new Hashtable();

      // Adding elements in Hashtable
      strHashTable.Add("4", "Even Number");
      strHashTable.Add("9", "Odd Number");
      strHashTable.Add("5", "Odd and Prime Number");
      strHashTable.Add("2", "Even and Prime Number");

      // Get a collection of the keys.
      ICollection c = strHashTable.Keys;

      // Displaying the hashtable contents
      Console.WriteLine("=========Contents of the Hashtable=========");
      foreach(string str in c)
         Console.WriteLine(str + ": " + strHashTable[str]);
   }
}

In diesem Programm fügen wir einen Wert vom Typ String hinzu. Wir fügen den Wert mit der Add()-Methode hinzu und rufen dann den Schlüsselsatz in der Hash-Tabelle ab. Anschließend verwenden wir eine foreach-Schleife, um diesen Schlüsselsatz zu durchlaufen und jeden Schlüssel und seinen entsprechenden Wert anzuzeigen.

Ausgabe

Die generierte Ausgabe lautet wie folgt -

=========Contents of the Hashtable=========
5: Odd and Prime Number
9: Odd Number
2: Even and Prime Number
4: Even Number

Auf diese Weise können wir mithilfe der Add()-Methode der Hashtable-Klasse Elemente zur Hashtable-Sammlung hinzufügen.

In diesem Artikel haben wir gelernt, wie man Elemente zu einer Hash-Tabellensammlung hinzufügt. In zukünftigen Artikeln werden wir mehr über Hashtable-Operationen diskutieren.

Das obige ist der detaillierte Inhalt vonSo fügen Sie Elemente zu einer Hash-Tabellensammlung in C# hinzu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen