Collection: differenze tra le versioni
Vai alla navigazione
Vai alla ricerca
Nessun oggetto della modifica |
Nessun oggetto della modifica |
||
| Riga 1: | Riga 1: | ||
Una '''Collection''' è una ''hash table'' | Una '''Collection''' è una ''hash table''|[[#Note|1]]|, ossia una "tabella" in cui ad un dato, o più dati, è associata una chiave. La ''Collezione'' permette di accedere al suo contenuto usando una chiave, senza tener conto di un indice come è invece per i vettori negli array e nelle matrici. |[[#Note|2]]| | ||
| Riga 85: | Riga 85: | ||
[1] Un ''hash table'' è una struttura dati usata per mettere in corrispondenza una data chiave con un dato valore. (cfr. [http://it.wikipedia.org/wiki/Hash_table wikipedia]) | [1] Un ''hash table'' è una struttura dati usata per mettere in corrispondenza una data chiave con un dato valore. (cfr. [http://it.wikipedia.org/wiki/Hash_table wikipedia]) | ||
[2] Riportiamo di seguito quanto scritto dall'utente ''md9327'' nel forum di Gambas-it.org: "''La classe Collection gestisce una array indicizzato per chiave. Si può associare una colonna con un nome chiave. Questo oggetto è utile in quei casi in cui vogliamo identificare univocamente una colonna.''". | |||
Versione delle 15:14, 18 ott 2012
Una Collection è una hash table|1|, ossia una "tabella" in cui ad un dato, o più dati, è associata una chiave. La Collezione permette di accedere al suo contenuto usando una chiave, senza tener conto di un indice come è invece per i vettori negli array e nelle matrici. |2|
' Gambas class file
miaCollezione As New Collection
Public Sub Button1_Click()
Dim primoValore As Byte
Dim secondoValore As Integer
primoValore = 64
secondoValore = 4000
With miaCollezione
.add(primoValore, "primoCampo")
.add(secondoValore, "secondoCampo")
.add("terzoValore", "terzoCampo")
End With
End
Public Sub Button1_Click()
Print miaCollezione["primoCampo"] ' scrive in console : 64
Print miaCollezione["secondoCampo"] ' scrive in console: 4000
Print miaCollezione["terzoCampo"] ' scrive in console: terzoValore
End
Richiamare un campo di una Collection in un'altra Collection
' Gambas class file
auto As New Collection
bici As New Collection
Public Sub Form_Open()
Dim tipo, ruota As Byte
Dim ts, sellino As Integer
tipo = InputBox("Inserisci dato byte:")
ruota = 144
ts = 4000
sellino = 10000
With bici
.add(ruota, "ruota")
.add(sellino, "sellino")
End With
With auto
.add(tipo, "type")
.add(ts, "motore")
.add(123, “numeri”)
.add("coda", "queue")
.add(bici["ruota"], "bicicletta")
End With
End
Public Sub Button1_Click()
Print auto["type"] ' scrive in console il valore immesso con l'inputbox
Print auto["motore"] ' scrive in console: 4000
Print auto["numeri”] ' scrive in console: 123
Print auto["queue"] ' scrive in console: coda
Print auto["q" & "ueue"] ' scrive in console: coda
Print auto["bicicletta"] ' scrive in console: 144 (campo/valore dell'altra Collection “bicicletta”)
End
Note
[1] Un hash table è una struttura dati usata per mettere in corrispondenza una data chiave con un dato valore. (cfr. wikipedia)
[2] Riportiamo di seguito quanto scritto dall'utente md9327 nel forum di Gambas-it.org: "La classe Collection gestisce una array indicizzato per chiave. Si può associare una colonna con un nome chiave. Questo oggetto è utile in quei casi in cui vogliamo identificare univocamente una colonna.".