Differenze tra le versioni di "Collection"

Da Gambas-it.org - Wikipedia.
Riga 1: Riga 1:
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.
+
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 14: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.".