Rumah  >  Artikel  >  pembangunan bahagian belakang  >  C# Hashtable

C# Hashtable

WBOY
WBOYasal
2024-09-03 15:04:59381semak imbas

Hashtable dalam C# ialah koleksi data dalam bentuk pasangan nilai kunci, yang berdasarkan kod cincang kunci dan kunci digunakan untuk mengakses elemen atau data dalam koleksi. Ia diwarisi daripada Kelas Objek kepada Hashtable. Jadi, pada asasnya, hashtable dalam C# atau mana-mana bahasa pengaturcaraan ialah perwakilan ringkas pasangan kunci dan nilai, yang disusun dengan betul dalam format kod cincang.

Sintaks:

Sekarang kita tahu apa itu C# hashtable, mari kita teruskan untuk memahami sintaks standard untuk pelaksanaan yang betul bagi hashtable. Di bawah ialah sintaks standard dan fail sistem yang diperlukan untuk menggunakan jadual hash dalam atur cara.

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

Fail sistem, yang mengandungi koleksi bertanggungjawab untuk mengimport fungsi dan kaedah yang diperlukan yang digunakan oleh jadual hash. Kemudian jadual hash ialah kata kunci utama di sini, kami mencipta contoh sebagai ht, dan operasi kami akan dilakukan ke atas ht yang baru dibuat. Sekarang setelah kita mengetahui sintaks yang sesuai untuk pelaksanaan jadual cincang, mari kita fahami cara ia berfungsi.

Bagaimanakah Hashtable berfungsi dalam C#?

Seperti yang dijelaskan sebelum ini, kita tahu bahawa jadual hash ialah koleksi data atau maklumat dalam bentuk pasangan nilai kunci. Contoh mudah untuk pasangan nilai kunci ialah "Nama: Sulaksh", di sini kuncinya ialah Nama dan nilainya ialah Sulaksh, kunci kekal sama manakala nilainya boleh berbeza. Hashtable terdiri daripada kunci dan nilai, yang diwakili dengan kurungan kerinting dan menggunakan fungsi cincang untuk mengira.

Sekarang marilah kita bergerak ke arah pelaksanaan jadual hash yang betul dan memahami kerja menjadi contoh.

Contoh C# Hashtable

Contoh pertama kami ialah pelaksanaan ringkas jadual hash, di mana kami mempunyai jadual hash mudah, dengan kunci nombor dan nilai dan kami akan mencetak jumlah bilangan elemen yang kami ada dalam jadual hash, kodnya adalah seperti berikut:

Contoh #1

Kod:

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);
}
}

Penjelasan Kod: Bermula dengan fail sistem, di sini koleksi adalah yang paling penting, kemudian kami mempunyai kelas kami, di mana kaedah utama kami. Dalam kaedah utama, ialah pengisytiharan jadual hash kami, diikuti oleh tiga pasangan nilai kunci. Kami telah melaksanakan fungsi tambah untuk memasukkan elemen. Jadi jadual hash kami terdiri daripada tiga pasangan nilai kunci dan akhirnya, kami mempunyai kenyataan cetakan, yang akan mencetak jumlah bilangan elemen yang kami ada dalam jadual hash kami, iaitu tiga. Kami menggunakan fungsi kiraan mudah di sini, rujuk tangkapan skrin yang dilampirkan di bawah untuk output:

C# Hashtable

Seperti yang dijangkakan, output memberitahu kami bahawa kami mempunyai empat elemen dalam jadual cincang kami, kini beralih kepada contoh seterusnya kami, kami akan cuba menunjukkan kunci dan nilai jadual cincang.

Contoh #2

Kod:

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);
}
}
}

Penjelasan Kod: Sama seperti contoh terdahulu, kami mempunyai fail sistem dan kelas dengan kaedah utama di dalamnya. Kemudian kami mempunyai jadual hash kami, diikuti oleh pasangan nilai utama dan kemudian pernyataan cetakan. Kemudian kami mempunyai pernyataan foreach kami, yang akan memilih satu elemen pada satu masa, dan dalam baris seterusnya akan mencetaknya sebagai output. Output kami dijangka menjadi senarai elemen dalam bentuk kunci dan nilai, rujuk tangkapan skrin di bawah.

C# Hashtable

Seperti yang dijangkakan, output sedang mencetak elemen jadual hash dan sekarang untuk contoh seterusnya kami akan melaksanakan fungsi jelas dengan outhashtable dan kodnya adalah seperti berikut.

Contoh #3

Kod:

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);
}
}

Penjelasan Kod: Dengan fail dan kaedah sistem yang diperlukan, kami mempunyai jadual hash dan jumlah tiga pasangan nilai utama yang ditakrifkan di dalamnya. Kami telah melaksanakan fungsi tambah untuk menambah elemen pada jadual hash. Kemudian kami mencetak pernyataan kami, yang hanya akan mencetak semua elemen dalam jadual hash, iaitu tiga. Sebelum mengosongkan jadual hash, kami telah mencetak jumlah bilangan elemen yang terdapat dalam senarai dan kemudian kami mempunyai fungsi jelas kami, yang akan mengosongkan keseluruhan jadual hash, bermakna setiap elemen akan dikosongkan daripada senarai dan kenyataan cetakan akhir akan mencetak nombor unsur yang hadir sekarang, yang akan menjadi sifar.

C# Hashtable

Seperti yang dijelaskan, fungsi clear berfungsi, dan senarai itu dikosongkan dan sekarang, meneruskan, untuk contoh seterusnya, kami akan melaksanakan fungsi alih keluar.

Contoh #4

Kod:

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.

Atas ialah kandungan terperinci C# Hashtable. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:C# menungguArtikel seterusnya:C# menunggu