Come utilizzare un HashTable in un'applicazione Visual Basic

January 4

Una tabella hash è una struttura dati che utilizza una matrice socio per mappare uniche coppie "chiave-valore" e memorizzare i dati. Ad esempio, un atleta che finisce prima (la chiave) conquista una medaglia d'oro (il valore). Perché non ci può essere solo un primo classificato, si garantisce che non sarà possibile duplicare quella chiave specifica nella tabella hash. Le tabelle hash ridurre il sovraccarico di ricerca dei dati rispetto ad altre strutture di dati. Visual Basic ha una classe HashTable con diversi metodi utili che è possibile implementare nei vostri progetti invece di creare il proprio da zero.

istruzione

1 Aprire un nuovo progetto di Visual Basic. Fare doppio clic sul controllo "Button" quattro volte per aggiungere "Button1" attraverso "Button4" per la forma e disporli come ti piace. Cambiare la proprietà "Testo" per "Button1" a "Add", per "Button2" a "Rimuovi", per "Button3" a "Mostra tutto" e per "Button4" a "Clear".

2 Premere il tasto "F7" per aprire la finestra del codice. Digitare il seguente codice nella prima riga:

Importazioni System.Collections

Questo importa il namespace System.Collections nel progetto. Esso contiene la classe Hashtable.

3 Aprire la classe "Form1" e digitare il seguente codice:

Dim MyHashTable come nuovo Hashtable ()

Questo crea un nuovo oggetto chiamato "MyHashTable" che utilizza la classe Hashtable.

4 Aprire la subroutine "Button1_Click" e digitare il seguente codice:

Provare

MyHashTable.Add ( "First", "Gold")

MyHashTable.Add ( "In secondo luogo", "Argento")

MyHashTable.Add ( "Terzo", "bronzo")

Fermo ex come eccezione

MessageBox.Show ( "chiave duplicata")

End Try

Queste linee usano il metodo "Aggiungi" per aggiungere tre nuovi elementi alla tabella hash con "In primo luogo", "secondo" e "Terzo", come le chiavi e "Gold", "argento" e "bronzo" come i loro rispettivi valori. È possibile ottenere le coppie chiave-valore da qualsiasi altra parte del programma, come ad esempio un InputBox utente, controlli TextBox o altre selezioni in fase di esecuzione. L'aggiunta di questi elementi in un blocco "try-catch" assicura che se si tenta di aggiungere un elemento con una chiave che esiste già nella tabella hash, non in crash il programma.

5 Aprire la subroutine "Button2_Click" e digitare il seguente codice:

Se (MyHashTable.Count = 0) Poi

MsgBox ( "HashTable è vuoto")

Altro

MyHashTable.Remove (MyHashTable.Count)

Finisci se

Queste linee usano il metodo del "conte" per vedere se la tabella hash è già vuota. Se è così, il programma indica all'utente; se non si rimuove l'elemento più recente. È possibile programmare modi alternativi per rimuovere elementi dalla tabella hash.

6 Aprire la subroutine "Button3_Click" e digitare il seguente codice:

Se MyHashTable.Count = 0 Then

MsgBox ( "Non ci sono elementi in HashTable")

Altro

Per i = 0 Per MyHashTable.Count - 1

MsgBox (MyHashTable.Keys (i) .ToString & "," & MyHashTable.Values ​​(i))

Next i

Finisci se

Queste linee controllano per vedere se esistono le voci nella tabella hash. In caso contrario, l'utente viene informato che la tabella è vuota; In caso contrario, tutte le coppie chiave-valore vengono visualizzati. Poiché le tabelle hash utilizzano zero indicizzazione, è necessario contare fino a "contare" meno uno di questa tabella di hash.

7 Aprire la subroutine "Button4_Click" e digitare il seguente codice:

MyHashTable.Clear ()

Questo metodo cancella tutte le voci della tabella hash. Non è necessario controllare prima se la tabella è vuota o non perché cancellare una tabella vuota non causa un errore.