Heim  >  Artikel  >  Backend-Entwicklung  >  C#-Hashtable

C#-Hashtable

WBOY
WBOYOriginal
2024-09-03 15:04:59465Durchsuche

Hashtable in C# ist eine Sammlung von Daten in Form von Schlüssel-Wert-Paaren, die auf dem Hash-Code des Schlüssels basieren und der Schlüssel verwendet wird, um auf die Elemente oder Daten innerhalb der Sammlung zuzugreifen. Es wird von der Objects-Klasse an Hashtable geerbt. Im Grunde ist eine Hashtabelle in C# oder einer anderen Programmiersprache eine einfache Darstellung von Schlüssel-Wert-Paaren, die ordnungsgemäß in einem Hash-Code-Format organisiert sind.

Syntax:

Da wir nun wissen, was eine C#-Hashtabelle ist, gehen wir zum Verständnis der Standardsyntax für die ordnungsgemäße Implementierung der Hashtabelle über. Nachfolgend finden Sie die Standardsyntax und die erforderlichen Systemdateien für die Verwendung von Hashtable in einem Programm.

using System.Collections;
Hashtableht = new Hashtable();

Die Systemdatei, die die Sammlungen enthält, ist für den Import der erforderlichen Funktionen und Methoden verantwortlich, die die Hashtabelle verwendet. Dann ist die Hashtabelle hier das Hauptschlüsselwort. Wir haben eine Instanz als ht erstellt und unsere Operationen werden über das neu erstellte ht ausgeführt. Nachdem wir nun die richtige Syntax für die Implementierung einer Hashtabelle kennen, wollen wir verstehen, wie sie funktioniert.

Wie funktioniert Hashtable in C#?

Wie bereits erläutert, wissen wir, dass eine Hashtabelle eine Sammlung von Daten oder Informationen in Form von Schlüssel-Wert-Paaren ist. Ein einfaches Beispiel für ein Schlüssel-Wert-Paar ist „Name: Sulaksh“. Hier ist der Schlüssel Name und der Wert Sulaksh. Der Schlüssel bleibt gleich, während die Werte unterschiedlich sein können. Hashtable besteht aus Schlüssel und Wert, die in geschweiften Klammern dargestellt werden und zur Berechnung eine Hash-Funktion verwenden.

Lassen Sie uns nun zur richtigen Implementierung der Hashtabelle übergehen und die Einarbeitung in Beispiele verstehen.

Beispiele für C# Hashtable

Unser erstes Beispiel ist eine einfache Implementierung einer Hashtabelle, bei der wir eine einfache Hashtabelle mit Zahlenschlüsseln und Werten haben und die Gesamtzahl der Elemente, die wir in der Hashtabelle haben, ausgeben. Der Code lautet wie folgt:

Beispiel #1

Code:

using System;
using System.Collections;
class sampleht {
static public void Main() {
Hashtableexampleht = new Hashtable();
exampleht.Add(1, " Element 1");
exampleht.Add(2, " Element 2");
exampleht.Add(3, " Element 3");
Console.WriteLine("\n The Total No. of elements: {0}", exampleht.Count);
}
}

Code-Erklärung:Begonnen mit Systemdateien, hier sind die Sammlungen am wichtigsten, dann haben wir unsere Klasse, in der sich unsere Hauptmethode befindet. Innerhalb der Hauptmethode deklarieren wir eine Hashtabelle, gefolgt von drei Schlüssel-Wert-Paaren. Wir haben die Add-Funktion implementiert, um die Elemente einzufügen. Unsere Hashtabelle besteht also aus drei Schlüssel-Wert-Paaren und schließlich haben wir eine Druckanweisung, die die Gesamtzahl der Elemente ausgibt, die wir in unserer Hashtabelle haben, also drei. Wir verwenden hier eine einfache Zählfunktion. Die Ausgabe finden Sie im unten angehängten Screenshot:

C#-Hashtable

Wie erwartet sagt uns die Ausgabe, dass wir vier Elemente in unserer Hashtabelle haben. Fahren wir nun mit unserem nächsten Beispiel fort, in dem wir versuchen, den Schlüssel und die Werte der Hashtabelle anzuzeigen.

Beispiel #2

Code:

using System;
using System.Collections;
class exampleHT {
static publicvoid Main() {
HashtablesampleHT = new Hashtable();
sampleHT.Add(1, " One");
sampleHT.Add(2, " Two");
sampleHT.Add(3, " Three");
Console.WriteLine("\n Below is the content of Hashtable: \n");
foreach (DictionaryEntry entry in sampleHT) {
Console.WriteLine(" {0}, {1}", entry.Key, entry.Value);
}
}
}

Code-Erklärung: Ähnlich wie im vorherigen Beispiel haben wir Systemdateien und eine Klasse mit der Hauptmethode darin. Dann haben wir unsere Hashtabelle, gefolgt von den Schlüsselwertpaaren und dann einer Druckanweisung. Dann haben wir unsere foreach-Anweisung, die jeweils ein Element auswählt und es in der nächsten Zeile als Ausgabe ausgibt. Unsere Ausgabe wird voraussichtlich eine Liste von Elementen in Form von Schlüsseln und Werten sein, siehe den folgenden Screenshot.

C#-Hashtable

Wie erwartet druckt die Ausgabe die Elemente der Hashtabelle und jetzt werden wir für unser nächstes Beispiel die Clear-Funktion mit outhashtable implementieren und der Code ist wie folgt.

Beispiel #3

Code:

using System;
using System.Collections;
class sampleht {
static public void Main()  {
Hashtableexampleht = new Hashtable();
exampleht.Add(1, " Element 1");
exampleht.Add(2, " Element 2");
exampleht.Add(3, " Element 3");
Console.WriteLine("\n Elements of the Hashtable :");
foreach(DictionaryEntry ele1 in exampleht) {
Console.WriteLine(ele1.Value);
}
Console.WriteLine(" No. of elements before clearing: {0} ", exampleht.Count);
exampleht.Clear();
Console.WriteLine(" Total No. of elements now: {0} ", exampleht.Count);
}
}

Code-Erklärung: Mit unseren erforderlichen Systemdateien und -methoden haben wir unsere Hashtabelle und insgesamt drei Schlüssel-Wert-Paare darin definiert. Wir haben die Add-Funktion implementiert, um die Elemente zur Hash-Tabelle hinzuzufügen. Dann verwenden wir unsere print-Anweisung, die einfach alle Elemente innerhalb der Hash-Tabelle druckt, also drei. Bevor wir die Hashtabelle löschen, haben wir die Gesamtzahl der in der Liste vorhandenen Elemente gedruckt und dann haben wir unsere Clear-Funktion, die die gesamte Hashtabelle löscht, was bedeutet, dass jedes Element aus der Liste gelöscht wird und die letzte Druckanweisung die Zahl ausgibt der jetzt vorhandenen Elemente, die Null sein werden.

C#-Hashtable

Wie erklärt, erledigt die Clear-Funktion ihre Arbeit und die Liste wird gelöscht. Nun werden wir für unser nächstes Beispiel die Remove-Funktion implementieren.

Beispiel #4

Code:

using System;
using System.Collections;
class sampleht {
static public void Main() {
Hashtableexampleht = new Hashtable();
exampleht.Add(1, " Element 1");
exampleht.Add(2, " Element 2");
exampleht.Add(3, " Element 3");
Console.WriteLine("\n List of Original Elements:");
foreach (var key in exampleht.Keys )
Console.WriteLine(" {0}, {1}",key , exampleht[key]);
exampleht.Remove(3);
exampleht.Remove(1);
Console.WriteLine("\n Elements after removal:");
foreach (var key in exampleht.Keys )
Console.WriteLine(" {0}, {1}",key , exampleht[key]);
}
}

Code Explanation: Just as our earlier examples, we have our system files, class, and the main method. Then we have our hashtable with a total of three key values. Then we have our print statement, which will print out the original list along with key and values, using foreach. We then have the remove function for two keys, which will remove the keys that we pass, then we have our print statement, which will use foreach and print every single element present in the hashtable after removing.

C#-Hashtable

Advantages

Advantages of any function or methodology is important to understand its real time applications and hashtable’s most widely known advantage is how it allows the developer the ability for synchronization. Hashtable has noted advantages over the search tree and this makes them practical to use in real time computer applications and for the purpose of database indexing. Speed, compared to other table type data structures is best delivered by hashtables. Having key value pairs makes it easy to anticipate the format regarding data and restructuring is done easily.

Conclusion

Hashtable in C# is a collection of elements, represented in a key value pair format. The key can be the same, while values differ and the key cannot be null while a value can be. We implemented an example of functions like remove, clear, and print. Hashtable has a speed advantage over other data structures.

Das obige ist der detaillierte Inhalt vonC#-Hashtable. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:C# wartetNächster Artikel:C# wartet