C # Hashtable dengan Contoh

Isi kandungan:

Anonim

Apakah Hashtable dalam C #?

Meja hash adalah koleksi khas yang digunakan untuk menyimpan item nilai kunci. Oleh itu, daripada menyimpan hanya satu nilai seperti timbunan, senarai array dan barisan, jadual hash menyimpan 2 nilai. 2 nilai ini membentuk elemen jadual hash.

Berikut adalah beberapa contoh bagaimana nilai jadual hash.

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

Di atas kami mempunyai 3 pasangan nilai utama. Kunci setiap elemen masing-masing 001, 002 dan 003. Nilai setiap pasangan nilai kunci masing-masing adalah ".Net", "C #" dan "ASP.Net".

Mari lihat operasi yang tersedia untuk koleksi Hashtable dengan lebih terperinci.

Pengisytiharan Hashtable

Pengisytiharan Hashtable ditunjukkan di bawah. Hashtable dibuat dengan bantuan Jenis Papan Data Hashtable. Kata kunci "baru" digunakan untuk membuat objek Hashtable. Objek kemudian diberikan kepada pemboleh ubah ht.

Hashtable ht = new Hashtable()

Menambah elemen ke Hashtable

Kaedah Tambah digunakan untuk menambahkan elemen ke dalam barisan. Sintaks umum pernyataan diberikan di bawah

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

Contoh 1:

Ingat bahawa setiap elemen jadual hash terdiri daripada 2 nilai, satu adalah kunci, dan yang lain adalah nilai.

Sekarang, mari kita lihat ini berfungsi pada tahap kod. Semua kod yang disebutkan di bawah akan ditulis ke aplikasi Konsol kami.

Kod akan ditulis ke fail Program.cs kami. Dalam program di bawah, kami akan menulis kod untuk melihat bagaimana kami dapat menggunakan kaedah yang disebutkan di atas.

Buat masa ini dalam contoh kami, kami hanya akan melihat bagaimana kami dapat membuat hashtable, menambahkan elemen ke hashtable dan memaparkannya dengan sewajarnya.

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

Penjelasan Kod: -

  1. Pertama, kami menyatakan pemboleh ubah hashtable menggunakan jenis data Hashtable dengan menggunakan kata kunci "Baru." Nama pembolehubah mentakrifkan adalah 'ht'.
  2. Kami kemudian menambahkan elemen ke dalam jadual hash menggunakan kaedah Tambah. Ingat bahawa kita perlu menambahkan elemen kunci dan nilai semasa menambahkan sesuatu ke hashtable.
  3. Tidak ada cara langsung untuk memaparkan elemen jadual hash.
  • Untuk menampilkan hashtable, pertama-tama kita perlu mendapatkan senarai kunci (001, 002 dan 003) dari tabel hash.
  • Ini dilakukan melalui antara muka ICollection. Ini adalah jenis data khas yang boleh digunakan untuk menyimpan kunci koleksi hashtable. Kami kemudian menetapkan kunci koleksi hashtable kepada 'kunci' pemboleh ubah.
  1. Seterusnya untuk setiap nilai kunci, kita mendapatkan nilai yang berkaitan dalam hashtable dengan menggunakan pernyataan ht [k].

Sekiranya kod di atas dimasukkan dengan betul dan program dijalankan, output berikut akan dipaparkan.

Pengeluaran:

Mari lihat beberapa kaedah lagi yang tersedia untuk jadual hash.

Mengandungi Key

Kaedah ini digunakan untuk melihat apakah kunci ada di Hashtable. Berikut adalah sintaks umum penyataan ini. Pernyataan itu akan kembali benar jika kunci itu ada, jika tidak, nilai tersebut akan mengembalikan nilai palsu.

Hashtable.Containskey(key)

Mengandungi Nilai

Kaedah ini digunakan untuk melihat apakah Nilai ada di Hashtable. Berikut adalah sintaks umum penyataan ini. Penyataan akan kembali benar jika Nilai itu ada, jika tidak, nilai tersebut akan mengembalikan nilai palsu.

Hashtable.ContainsValue(value)

Contoh 2:

Mari ubah kod dalam aplikasi Konsol kami untuk menunjukkan bagaimana kita dapat menggunakan kaedah "Containskey" dan "ContainsValue".

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

Penjelasan Kod: -

  1. Pertama, kami menggunakan kaedah ContainsKey untuk melihat apakah kuncinya ada dalam hashtable. Kaedah ini akan kembali benar jika kuncinya ada di hashtable. Kaedah ini harus kembali benar kerana kuncinya memang ada di hashtable.
  2. Kami kemudian menggunakan kaedah ContainsValue untuk melihat apakah nilainya ada di hashtable. Kaedah ini akan mengembalikan 'true' kerana Nilai memang ada di hashtable.

Sekiranya kod di atas dimasukkan dengan betul dan program dijalankan, output berikut akan dipaparkan.

Pengeluaran:

Dari hasilnya, anda dapat melihat dengan jelas bahawa kunci dan nilai yang dicari terdapat dalam jadual hash.

Ringkasan

  • Hashtable digunakan untuk menyimpan elemen yang terdiri daripada pasangan nilai utama. Untuk mengakses nilai elemen, anda perlu mengetahui kunci elemen tersebut.