Home Page Home Page Tips & Tricks Come utilizzare gli HashTable in .NET ?

Come utilizzare gli HashTable in .NET ?


Gli HashTable ci permettono di salvare in memoria una lista coppie formate da chiave-valore ad esempio: "Rossi" - "Mario"; possiamo puntare direttamente al valore interessato attraverso la chiave.

La classe è inserita nel namespace System.Collections, che ha all’interno diverse classi e interfacce che raccolgono implementazioni per le liste e le collections, in un precedente articolo abbiamo già visto l'uso di questo namespace attraverso la classe System.ArrayList.

Per inserire una nuova coppia basta utilizzare il metodo Add:

C#
Codice .NET n°1
HashTable lista = new HastTable();
lista.Add[“Rossi”,”Mario”];


VB.NET
Codice .NET n°2
Dim Lista as New HastTable()
Lista.Add(“Rossi”,”Mario”)


La chiave è una stringa è non può essere null, mentre il secondo parametro è un’object e può essere anche null.
Essendo il secondo parametro un’object possiamo inserire come valore qualunque cosa, quindi in questo modo la nostra lista diventa molto dinamica e flessibile dandoci la possibilità di inserire oggetti eterogenei.

Per recuperare il valore basta puntare con la chiave e castare l’oggetto in modo adeguato

C#
Codice .NET n°3
string nome = (string)lista[“Rossi”];


VB.NET
Codice .NET n°4
 
Dim nome as String = Ctype(list(“Rossi”),string)


Se invece non conosciamo la chiave possiamo ciclare tra le coppie, per fare questo dobbiamo utilizzare la classe DictionaryEntry, che rappresenta la coppia chiave-valore

C#
Codice .NET n°5
for each(DictionaryEntry entry in lista)
{
String chiave = entry.key;
String valore = (string)entry.value;
}


VB.NET
Codice .NET n°6
Dim entry as DictionaryEntry.

For each entry in lista
Dim chiave as string = entry.key
Dim valore as string = Ctype(entry.value,string)
Next


Copyright © dotNetHell.it 2002-2018
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5