Nwlapcug.com


Come utilizzare un oggetto HashTable in un'applicazione Visual Basic

Una tabella hash è una struttura di dati che utilizza una matrice socio mappa uniche coppie "chiave-valore" e archiviare i dati. Ad esempio, un atleta che termina per prima (la chiave) vince una medaglia d'oro (il valore). Perché non ci può essere solo un vincitore del primo posto, garantisci che non duplicare tale chiave specifico nella tabella hash. Tabelle hash riducono l'overhead di ricerca dei dati rispetto ad alcune 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.

Istruzioni

1

Aprire un nuovo progetto di Visual Basic. Fare doppio clic sul "pulsante" controlla quattro volte per aggiungere "Button1" attraverso "Button4" al form e disporli come ti piace. Modificare la proprietà "Text" per "Button1" "Aggiungi," per "Button2" "Rimuovi", per "Button3" per "Mostra tutto" e per "Button4" su "Clear".

2

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

Imports System. Collections

Nel progetto di importare lo spazio dei nomi System. Collections. Contiene la classe Hashtable.

3

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

Dim MyHashTable As New 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 ("Primo", "Oro")

MyHashTable.Add ("Secondo", "Argento")

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

Catch ex As Exception

MessageBox. Show ("chiave duplicata")

End Try

Queste linee di utilizzano il metodo "Add" per aggiungere tre nuovi elementi alla tabella hash con il "Primo", "Secondo" e il "Terzo" come chiavi e "Oro", "Argento" e "Bronzo" come i rispettivi valori. È possibile ottenere le coppie chiave-valore da nessun'altra parte nel programma, ad esempio un utente InputBox, controlli TextBox o altre selezioni in fase di esecuzione. Aggiunta di questi elementi in un blocco "try-catch" assicura che se si tenta di aggiungere un elemento con una chiave già esistente nella tabella hash, non in crash il programma.

5

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

Se (MyHashTable.Count = 0) quindi

MsgBox ("HashTable è vuoto")

Altro

MyHashTable.Remove(MyHashTable.Count)

End If

Queste righe utilizzano il metodo "Count" per vedere se la tabella hash è già vuota. In questo caso, il programma indica all'utente; in caso contrario, 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 ("nessun elemento in HashTable")

Altro

For i = 0 To MyHashTable.Count - 1

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

Prossima ho

End If

Queste linee controllare prima per vedere se tutte le voci presenti nella tabella hash. Se non, l'utente è informato che la tabella è vuota; in caso contrario, tutte le coppie chiave-valore vengono visualizzate. Perché tabelle hash utilizzano l'indicizzazione zero, è necessario contare fino a questa di tabella hash "count" meno uno.

7

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

MyHashTable.Clear()

Questo metodo cancella tutte le voci nella tabella hash. Non è necessario controllare prima se la tabella è vuota o non perché un tavolo vuoto di compensazione non causa un errore.