Differenze tra le versioni di "Array dinamici – creazione e riempimento"
Da Gambas-it.org - Wikipedia.
Riga 3: | Riga 3: | ||
− | == | + | ==Definizione dinamica (incremento) della quantità degli elementi== |
===In un array monodimensionale=== | ===In un array monodimensionale=== | ||
Riga 68: | Riga 68: | ||
− | ==Definizione successiva della quantità degli elementi<font>== | + | ==Definizione esplicita successiva della quantità degli elementi<font>== |
− | + | ===In un array monodimensionale=== | |
− | |||
'''Public''' Sub Button1_Click() | '''Public''' Sub Button1_Click() | ||
Riga 89: | Riga 88: | ||
− | + | ===In un array multidimensionale=== | |
'''Public''' Sub Button1_Click() | '''Public''' Sub Button1_Click() | ||
Versione delle 10:29, 19 ago 2012
Esporremo qui i casi in cui la quantità degli elementi presenti in un array non è definita a priori, ma lo sia successivamente in modo esplicito o in modo dinamico.
Indice
Definizione dinamica (incremento) della quantità degli elementi
In un array monodimensionale
Public Sub Button1_Click() Dim nu As Byte Dim multdimArr As New Byte[] ' dichiara l'array, ma senza definirne la quantità dei propri elementi ' Incrementa dinamicamente la quantità degli elementi dell'array For nu = 0 To 37 multdimArr.Add(nu) Next ' verifica: For nu = 0 To 37 Print multdimArr[nu] Next End
o anche:
Public Sub Button1_Click() Dim nu As Byte Dim multdimArr As Byte[] ' dichiara l'array, ma senza definirne la quantità dei propri elementi ' Incrementa dinamicamente la quantità degli elementi dell'array For nu = 0 To 37 multdimArr = New Byte[nu] multdimArr.Add(nu) Next For nu = 0 To 37 Print multdimArr[nu] Next End
In un array multidimensionale
Per poter incrementare dinamicamente gli elementi di un array multidimensionale dovremo necessariamente inizialmente dichiarare la sua dimensione, ponendone il valore degli elementi ad almeno: 1. Nell'esempio sottostante poniamo il caso di un array bidimensionale con numero di colonne fisso ed incremento dinamico del numero delle righe ad ogni clic sul Button1:
Private multdimArr As Integer[] Private rig As Integer = 1 ' Si comincia con l'avere una riga Public Sub Button2_Click() ' Incrementa dinamicamente la quantità delle righe dell'array multdimArr = New Integer[rig, 2] ' Pone il valore numerico medesimo nella nuova riga della 1a colonna: multdimArr[rig - 1, 1] = rig Print multdimArr[rig - 1, 1] Inc rig End
Definizione esplicita successiva della quantità degli elementi
In un array monodimensionale
Public Sub Button1_Click() Dim ind1 As Integer = 38 Dim nu As Integer Dim multdimArr As Integer[] ' dichiara l'array, ma senza dimensionarlo ' dimensiona "ora" l'array: multdimArr = New Integer[ind1] For nu = 0 To multdimArr.Max ' riempie ogni elemento dell'array: multdimArr[nu] = nu Print multdimArr[nu] Next End
In un array multidimensionale
Public Sub Button1_Click() Dim multdimArr As Integer[] Dim rig, col As Integer Dim nuR, nuC As Integer ' dimensiona "ora" l'array: rig = InputBox("Inserisci tu la dimensione delle righe dell'array:") col = InputBox("Inserisci tu la dimensione delle colonne dell'array:") multdimArr = New Integer[rig, col] For nuR = 0 to rig - 1 For nuC = 0 To col - 1 multdimArr[nuR, nuC] = nuC Print multdimArr[nuR, nuC] Next Next End