Differenze tra le versioni di "Array dinamici – creazione e riempimento"
Da Gambas-it.org - Wikipedia.
Riga 44: | Riga 44: | ||
− | ==Incremento dinamico | + | ==Incremento dinamico degli elementi di un array multidimensionale== |
− | Per poter incrementare dinamicamente un array multidimensionale dovremo necessariamente inizialmente dichiarare la sua dimensione, ponendone il valore | + | 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'': | 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 multdimArr As Integer[] |
Versione delle 10:07, 19 ago 2012
Esporremo qui il caso 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.
Array monodimensionale senza definizione della quantità dei propri elementi
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
Incremento dinamico degli elementi di 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 Public Sub Button2_Click() Dim col As Integer = 2 multdimArr = New Integer[rig, col] multdimArr[rig - 1, 1] = rig Print multdimArr[rig - 1, 1] Inc rig End
Array con dimensionamento successivo
Esempio con 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
Esempio con 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