C# Hashtable dengan Contoh

Apa itu Hashtable di C#?

Tabel hash adalah koleksi khusus yang digunakan untuk menyimpan item nilai kunci. Jadi, alih-alih hanya menyimpan satu nilai seperti tumpukan, daftar array, dan antrian, tabel hash menyimpan 2 nilai. 2 nilai ini membentuk elemen tabel hash.

Di bawah ini adalah beberapa contoh tampilan nilai tabel hash.

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

Di atas kami memiliki 3 pasangan nilai kunci. Kunci setiap elemen masing-masing adalah 001, 002 dan 003. Nilai dari setiap pasangan nilai kunci adalah “.Bersih“, “C#” dan “ASP.Net” masing-masing.

Mari kita lihat operasi yang tersedia untuk koleksi Hashtable secara lebih detail.

Deklarasi Hashtable

Deklarasi Hashtable ditunjukkan di bawah ini. Hashtable dibuat dengan bantuan Tipe Data Hashtable. Kata kunci “baru” digunakan untuk membuat objek Hashtable. Objek tersebut kemudian ditugaskan ke variabel ht.

Hashtable ht = new Hashtable()

Menambahkan elemen ke Hashtable

Metode Tambah digunakan untuk menambahkan elemen ke antre. Sintaks umum dari pernyataan tersebut diberikan di bawah ini

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

Contoh 1:

Ingatlah bahwa setiap elemen tabel hash terdiri dari 2 nilai, satu adalah kuncinya, dan yang lainnya adalah nilainya.

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

Kode akan ditulis ke file Program.cs kami. Dalam program di bawah ini, kita akan menulis kode untuk melihat bagaimana kita dapat menggunakan metode yang disebutkan di atas.

Untuk saat ini dalam contoh kita, kita hanya akan melihat bagaimana kita dapat membuat tabel hash, menambahkan elemen ke tabel hash dan menampilkannya sesuai kebutuhan.

Hashtable di C#

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 Kode: -

  1. Pertama, kita mendeklarasikan variabel hashtable menggunakan tipe data Hashtable dengan menggunakan kata kunci “Baru”. Nama variabel yang didefinisikan adalah 'ht'.
  2. Kami kemudian menambahkan elemen ke tabel hash menggunakan metode Tambah. Ingatlah bahwa kita perlu menambahkan elemen kunci dan nilai saat menambahkan sesuatu ke tabel hash.
  3. Tidak ada cara langsung untuk menampilkan elemen tabel hash.
  • Untuk menampilkan tabel hash, pertama-tama kita perlu mendapatkan daftar kunci (001, 002 dan 003) dari tabel hash.
  • Ini dilakukan melalui antarmuka ICollection. Ini adalah tipe data khusus yang dapat digunakan untuk menyimpan kunci koleksi tabel hash. Kami kemudian menetapkan kunci koleksi hashtable ke variabel 'kunci'.
  1. Selanjutnya untuk setiap nilai kunci, kita mendapatkan nilai terkait di tabel hash dengan menggunakan pernyataan ht[k].

Jika kode di atas dimasukkan dengan benar dan program dijalankan, output berikut akan ditampilkan.

Keluaran:

Hashtable di C#

Mari kita lihat beberapa metode lain yang tersedia untuk tabel hash.

BerisiKey

Metode ini digunakan untuk melihat apakah ada kunci di Hashtable. Di bawah ini adalah sintaks umum dari pernyataan ini. Pernyataan akan mengembalikan nilai benar jika kuncinya ada, jika tidak maka akan mengembalikan nilai salah.

Hashtable.Containskey(key)

BerisiNilai

Metode ini digunakan untuk melihat apakah suatu Nilai ada di Hashtable. Di bawah ini adalah sintaks umum dari pernyataan ini. Pernyataan akan mengembalikan nilai benar jika Nilainya ada, jika tidak maka akan mengembalikan nilai salah.

Hashtable.ContainsValue(value)

Contoh 2:

Mari kita ubah kode di kita Aplikasi konsol untuk menunjukkan bagaimana kita dapat menggunakan metode “Containskey” dan “ContainsValue”.

Hashtable di C#

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 Kode: -

  1. Pertama, kita menggunakan metode ContentKey untuk melihat apakah kunci tersebut ada di tabel hash. Metode ini akan mengembalikan nilai true jika kunci ada di tabel hash. Metode ini harus mengembalikan nilai true karena kuncinya memang ada di tabel hash.
  2. Kami kemudian menggunakan metode ContentValue untuk melihat apakah nilainya ada di tabel hash. Metode ini akan mengembalikan 'benar' karena Nilai memang ada di tabel hash.

Jika kode di atas dimasukkan dengan benar dan program dijalankan, output berikut akan ditampilkan.

Keluaran:

Hashtable di C#

Dari outputnya, Anda dapat melihat dengan jelas bahwa kunci dan nilai yang dicari ada di tabel hash.

Ringkasan

Hashtable digunakan untuk menyimpan elemen yang terdiri dari pasangan nilai kunci. Untuk mengakses nilai suatu elemen, Anda perlu mengetahui kunci elemen tersebut.