Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

C# hashtabel met voorbeelden

Wat is hashtabel in C#?

Een hashtabel is een speciale verzameling die wordt gebruikt om items met een sleutelwaarde op te slaan. Dus in plaats van slechts één waarde op te slaan, zoals de stapel, arraylijst en wachtrij, slaat de hashtabel 2 waarden op. Deze 2 waarden vormen een element van de hashtabel.

Hieronder staan ​​enkele voorbeelden van hoe waarden van een hashtabel eruit kunnen zien.

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

Hierboven hebben we 3 sleutelwaardeparen. De sleutels van elk element zijn respectievelijk 001, 002 en 003. De waarden van elk sleutelwaardepaar zijn respectievelijk ".Net", "C#" en "ASP.Net".

Laten we de beschikbare bewerkingen voor de Hashtable-verzameling eens nader bekijken.

Verklaring van de hashtabel

De verklaring van een hashtabel wordt hieronder weergegeven. Een Hashtabel wordt gemaakt met behulp van het Hashtable Datatype. Het sleutelwoord "new" wordt gebruikt om een ​​object van een hashtabel te maken. Het object wordt dan toegewezen aan de variabele ht.

Hashtable ht = new Hashtable()

Elementen toevoegen aan de hashtabel

De Add-methode wordt gebruikt om een ​​element aan de wachtrij toe te voegen. De algemene syntaxis van de verklaring wordt hieronder gegeven

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

Voorbeeld 1:

Onthoud dat elk element van de hashtabel uit 2 waarden bestaat, de ene is de sleutel en de andere is de waarde.

Laten we nu eens kijken hoe dit werkt op codeniveau. Alle onderstaande code wordt naar onze Console-applicatie geschreven.

De code wordt naar ons Program.cs-bestand geschreven. In het onderstaande programma zullen we de code schrijven om te zien hoe we de bovengenoemde methoden kunnen gebruiken.

Voor nu zullen we in ons voorbeeld kijken naar hoe we een hashtabel kunnen maken, elementen aan de hashtabel kunnen toevoegen en ze dienovereenkomstig kunnen weergeven.

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

Code uitleg:-

  1. Eerst declareren we de hashtable-variabele met behulp van het Hashtable-gegevenstype door het trefwoord 'Nieuw' te gebruiken. De naam van de variabele die definieert is 'ht'.

  2. Vervolgens voegen we elementen toe aan de hashtabel met behulp van de Add-methode. Onthoud dat we zowel een sleutel- als een waarde-element moeten toevoegen wanneer we iets aan de hashtabel toevoegen.

  3. Er is geen directe manier om de elementen van een hashtabel weer te geven.

  • Om de hashtabel weer te geven, moeten we eerst de lijst met sleutels (001, 002 en 003) uit de hashtabel halen.
  • Dit gebeurt via de ICollection-interface. Dit is een speciaal gegevenstype dat kan worden gebruikt om de sleutels van een hashtabelverzameling op te slaan. Vervolgens wijzen we de sleutels van de hashtabelverzameling toe aan de variabele 'sleutels'.
  1. Vervolgens krijgen we voor elke sleutelwaarde de bijbehorende waarde in de hashtabel met behulp van de instructie ht[k].

Als de bovenstaande code correct is ingevoerd en het programma wordt uitgevoerd, wordt de volgende uitvoer weergegeven.

Uitvoer:

Laten we eens kijken naar nog meer methoden die beschikbaar zijn voor hashtabellen.

BevatSleutel

Deze methode wordt gebruikt om te zien of een sleutel aanwezig is in de hashtabel. Hieronder vindt u de algemene syntaxis van deze verklaring. De instructie retourneert true als de sleutel bestaat, anders wordt de waarde false geretourneerd.

Hashtable.Containskey(key)

Bevat Waarde

Deze methode wordt gebruikt om te zien of een waarde aanwezig is in de hashtabel. Hieronder vindt u de algemene syntaxis van deze verklaring. De instructie retourneert true als de waarde bestaat, anders wordt de waarde false geretourneerd.

Hashtable.ContainsValue(value)

Voorbeeld 2:

Laten we de code in onze Console-toepassing wijzigen om te laten zien hoe we de methode "Containskey" en "ContainsValue" kunnen gebruiken.

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

Code uitleg:-

  1. Eerst gebruiken we de methode BevatKey om te zien of de sleutel aanwezig is in de hashtabel. Deze methode retourneert true als de sleutel aanwezig is in de hashtabel. Deze methode zou true moeten retourneren omdat de sleutel in de hashtabel bestaat.
  2. We gebruiken dan de methode BevatValue om te zien of de waarde aanwezig is in de hashtabel. Deze methode retourneert 'true' omdat de waarde in de hashtabel bestaat.

Als de bovenstaande code correct is ingevoerd en het programma wordt uitgevoerd, wordt de volgende uitvoer weergegeven.

Uitvoer:

Uit de uitvoer kunt u duidelijk zien dat zowel de sleutel als de waarde waarnaar wordt gezocht, aanwezig zijn in de hashtabel.

Samenvatting

Een hashtabel wordt gebruikt om elementen op te slaan die bestaan ​​uit sleutelwaardeparen. Om toegang te krijgen tot de waarde van een element, moet u de sleutel van het element kennen.


C Taal

  1. C#-expressies, statements en blokken (met voorbeelden)
  2. C++ do...while-lus met voorbeelden
  3. C++-aanwijzers met voorbeelden
  4. C++ Char-gegevenstype met voorbeelden
  5. Overbelasting van C++-operator met voorbeelden
  6. C++-functies met programmavoorbeelden
  7. C# Collecties Zelfstudie met Voorbeelden
  8. Python String count() met VOORBEELDEN
  9. Python round() functie met VOORBEELDEN
  10. Python map() functie met VOORBEELDEN
  11. Python Timeit() met voorbeelden