C # Hashtable s primeri

Kazalo:

Anonim

Kaj je Hashtable v C #?

Hash tabela je posebna zbirka, ki se uporablja za shranjevanje elementov ključ-vrednost. Torej, namesto da shrani samo eno vrednost, kot so sklad, seznam matrik in vrsta, hash tabela shrani 2 vrednosti. Ti dve vrednosti tvorita element razpršilne tabele.

Spodaj je nekaj primerov, kako lahko izgledajo vrednosti razpršene tabele.

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

Zgoraj imamo 3 pare ključnih vrednosti. Ključi vsakega elementa so 001, 002 in 003. Vrednosti vsakega para vrednosti ključev so ".Net", "C #" oziroma "ASP.Net".

Oglejmo si podrobneje operacije, ki so na voljo za zbirko Hashtable.

Izjava Hashtable

Izjava Hashtable je prikazana spodaj. Hashtable se ustvari s pomočjo podatkovnega tipa Hashtable. Ključna beseda "new" se uporablja za ustvarjanje predmeta Hashtable. Nato je objekt dodeljen spremenljivki ht.

Hashtable ht = new Hashtable()

Dodajanje elementov v Hashtable

Metoda Dodaj se uporablja za dodajanje elementa v čakalno vrsto. Splošna sintaksa stavka je podana spodaj

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

Primer 1:

Ne pozabite, da je vsak element razpršilne tabele sestavljen iz dveh vrednosti, ena je ključ, druga pa vrednost.

Zdaj pa poglejmo, kako to deluje na ravni kode. Vsa spodaj navedena koda bo zapisana v našo aplikacijo Console.

Koda bo zapisana v datoteko Program.cs. V spodnjem programu bomo napisali kodo, da bomo videli, kako lahko uporabimo zgoraj omenjene metode.

Za zdaj bomo v našem primeru le pogledali, kako lahko ustvarimo zgoščevalno tabelo, ji dodamo elemente in jih ustrezno prikažemo.

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

Pojasnilo kode: -

  1. Najprej spremenljivko razpršitve razglasimo z uporabo podatkovnega tipa Hashtable s ključno besedo "Novo". Ime spremenljivke, ki jo definira, je 'ht'.
  2. Nato v heš tabelo dodamo elemente z uporabo metode Add. Ne pozabite, da moramo pri dodajanju nečesa v hashtable dodati ključ in element vrednosti.
  3. Elementov zgoščene tabele ni mogoče neposredno prikazati.
  • Da bi prikazali zgoščevalno tabelo, moramo najprej dobiti seznam ključev (001, 002 in 003) iz razpršilne tabele.
  • To se naredi prek vmesnika ICollection. To je posebna podatkovna vrsta, ki se lahko uporablja za shranjevanje ključev zbirke razpršitve. Nato spremenljivki 'ključi' dodelimo ključe zbirke zgoščevalnih tabel.
  1. Nato za vsako vrednost ključa dobimo povezano vrednost v zgoščevalni tabeli z uporabo stavka ht [k].

Če je zgornja koda pravilno vnesena in se program zažene, se prikaže naslednji izhod.

Izhod:

Oglejmo si še nekaj metod, ki so na voljo za hash tabele.

VsebujeKljuč

Ta metoda se uporablja za ugotavljanje, ali je ključ prisoten v tabeli Hashtable. Spodaj je splošna sintaksa te izjave. Stavek bo vrnil true, če ključ obstaja, sicer pa vrednost false.

Hashtable.Containskey(key)

ContainsValue

Ta metoda se uporablja za ugotavljanje, ali je vrednost v tabeli Hash prisotna. Spodaj je splošna sintaksa te izjave. Stavek bo vrnil true, če vrednost obstaja, sicer pa vrednost false.

Hashtable.ContainsValue(value)

2. primer:

Spremenimo kodo v naši aplikaciji Console, da pokažemo, kako lahko uporabimo metodo "Containskey" in "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();}}}

Pojasnilo kode: -

  1. Najprej z metodo ContainsKey preverimo, ali je ključ prisoten v zgoščevalni tabeli. Ta metoda bo vrnila true, če je ključ prisoten v zgoščevalni tabeli. Ta metoda bi morala vrniti true, saj ključ obstaja v razpredelnici.
  2. Nato z metodo ContainsValue preverimo, ali je vrednost prisotna v razpredelnici. Ta metoda bo vrnila 'true', saj vrednost obstaja v zgoščevalni tabeli.

Če je zgornja koda pravilno vnesena in se program zažene, se prikaže naslednji izhod.

Izhod:

Iz izhoda lahko jasno vidite, da sta ključ in vrednost, ki jo iščete, prisotna v razpršeni tabeli.

Povzetek

  • Hashtable se uporablja za shranjevanje elementov, ki so sestavljeni iz parov vrednosti ključev. Če želite dostopati do vrednosti elementa, morate poznati ključ elementa.