En hash-tabell är en datastruktur som använder ett intresseföretag array att kartlägga unika " nyckel - värde" par och lagra data . Till exempel vinner en idrottsman som slutar först ( nyckeln ) en guldmedalj ( värdet ) . Eftersom det kan bara vara ett första - vinnaren , garanterar du att du inte kommer att duplicera den specifika nyckeln i hash tabellen . Hashtabeller minska overhead för att söka efter data jämfört med vissa andra datastrukturer . Visual Basic har en HashTable klass med flera användbara metoder som du kan genomföra i dina projekt istället för att skapa din egen från scratch . Instruktioner
1
Öppna ett nytt Visual Basic-projekt . Dubbelklicka på " Button " kontroll fyra gånger för att lägga till " Button1 " genom " Button4 " till formen och ordna dem som du vill . Ändra " Text " egenskapen för " Button1 " till " Lägg till " för " Button2 " till " Ta bort " för " Button3 " till " Visa alla" och för " Button4 " till " Clear ".
2
Tryck " F7 " för att öppna registret fönstret . Skriv följande kod på första raden :
Import System.Collections
import av System.Collections namespace i projektet . Den innehåller Hashtable klassen
3
Öppna " Form1 " klass och skriv följande kod : .
Dim MyHashTable Som New Hashtable ( ) katalog
detta skapar ett nytt objekt som heter " MyHashTable " som använder Hashtable klassen
4
Öppna " Button1_Click " subrutin och skriv följande kod : .
Prova
MyHashTable.Add ( " First " , "Gold " ) katalog
MyHashTable.Add ( " Second " , " Silver " ) katalog
MyHashTable.Add ( " Third " , " brons " )
Catch ex som Exception
MessageBox.Show ( " dubbla nyckel " ) katalog
End Försök
Dessa linjer använder " Add " för att lägga till tre nya punkter till hash tabellen med " First ", " Second " och " tredje " som nycklarna och " Guld ", " Silver" och " Brons " som deras respektive värden . Du kan få nyckelvärdepar från någon annanstans i programmet , t.ex. en användare InputBox , TextBox -kontroller eller andra markeringar på en körning. Lägga dessa poster i en " try-catch " blocket garanterar att om du försöker lägga till ett objekt med en nyckel som redan finns i hash tabellen , betyder inte krascha programmet .
5
Öppna " Button2_Click " subrutin och skriv följande kod :
p Om ( MyHashTable.Count = 0 ) Then
MsgBox ( " HashTable är tom " ) katalog
Else
MyHashTable.Remove ( MyHashTable.Count ) katalog
End If
Dessa linjer använder " Count " metod för att se om hash tabellen är tom redan . Om så är fallet , talar om för programmet att användaren , om inte , det tar bort det senaste objektet . Du kan programmera alternativa sätt att ta bort objekt från hash table
6
Öppna " Button3_Click " subrutin och skriv följande kod : .
P Om MyHashTable.Count = 0 Then
MsgBox ( " Inga produkter i HashTable " ) katalog
Else
För i = 0 att MyHashTable.Count - 1
MsgBox ( MyHashTable.Keys ( i) . ToString & " , " & MyHashTable.Values ( i) ) katalog
Nästa jag
End If
Dessa linjer kontrollera först för att se om några poster finns i hash-tabellen . Om inte , informeras användaren om att tabellen är tom , annars är alla nyckel - värde-par visas . Eftersom hash tabeller använder noll - indexering , måste du räkna upp till denna hash-tabell är " count " minus en
7
Öppna " Button4_Click " subrutin och skriv följande kod : .
MyHashTable.Clear ( ) katalog
Denna metod rensar alla poster i hash tabellen . Du behöver inte kolla först om tabellen är tom eller inte eftersom rensa en tom tabell inte orsakar ett fel .