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.
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().
DieAdd()-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.
public virtual void Add(object key, object value);
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.
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.
Das folgende Programm zeigt, wie man mit der Add()-Methode eine Hash-Tabelle aus verschiedenen Elementen erstellt.
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.
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.
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.
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!