Array VB.Net: stringhe, dinamiche con ESEMPI
⚡ Riepilogo intelligente
Gli array di VB.Net memorizzano più valori dello stesso tipo di dati sotto un unico nome di variabile, utilizzando un indice che inizia da zero. Sono supportati sia array a dimensione fissa che array dinamici, e le funzioni Split e Join consentono la conversione tra stringhe e array.
Che cos'è un array?
Un array è una struttura dati utilizzata per memorizzare elementi dello stesso tipo. tipo di datiGli elementi sono ordinati in sequenza, con il primo elemento all'indice 0 e l'ultimo all'indice n-1, dove n è il numero totale di elementi nell'array.
Come dichiarare e inizializzare un array
In VB.Net, gli array vengono dichiarati utilizzando l'istruzione Dim. Per esempio:
Dim myData() As Integer
Nell'esempio precedente, abbiamo definito un array denominato myData, che dovrebbe contenere elementi del tipo di dati intero. L'esempio seguente dimostra come possiamo dichiarare un array per contenere elementi stringa:
Dim myData(10) As String
Abbiamo definito un array denominato myData per contenere 10 stringhe.
Possiamo inizializzare gli array al momento della loro dichiarazione. Per esempio:
Dim myData() As Integer = {11, 12, 22, 7, 47, 32}
Abbiamo dichiarato l'array myData e vi abbiamo aggiunto 6 elementi interi. Questo può essere fatto anche per il caso delle stringhe:
Dim students() As String = {"John", "Alice", "Antony", "Gloria", "jayden"}
Abbiamo creato un array denominato studenti e vi abbiamo aggiunto 5 nomi.
In VB.Net, gli array si dividono in due gruppi a seconda che la loro dimensione possa cambiare dopo la dichiarazione. Il primo gruppo è costituito dagli array a dimensione fissa.
Array a dimensione fissa
Un array di dimensione fissa contiene un numero fisso di elementi. Ciò significa che è necessario definire il numero di elementi che conterrà durante la sua definizione. Supponiamo che tu abbia bisogno di un array per contenere solo 3 nomi di studenti. È possibile definire e inizializzare l'array come segue:
Dim students(0 to 2) As String students(0) = "John" students (1) = "Alice" students (2) = "Antony"
Abbiamo iniziato dichiarando un array di stringhe denominato students. 0 to 2 dichiara che l'array memorizzerà gli elementi dal suo indice 0 all'indice 2, il che significa che avremo 3 elementi in totale.
Per aggiungere elementi all'array, abbiamo utilizzato il nome dell'array e specificato l'indice in cui verrà archiviato l'elemento. Ad esempio, il nome John verrà memorizzato nell'indice 0 dell'array, il che significa che costituirà il primo elemento dell'array. Antony sarà l'ultimo elemento della schiera.
Quando il numero di elementi non è noto in anticipo, un array dinamico diventa la scelta migliore.
Array dinamici
Questo è un array che può contenere un numero qualsiasi di elementi. La dimensione dell'array può aumentare in qualsiasi momento. Ciò significa che possiamo aggiungere nuovi elementi all'array ogni volta che vogliamo. Per dimostrarlo, definiamo prima un array di numeri interi:
Dim nums() As Integer
Abbiamo definito un array di numeri interi denominato nums. Ora devi aggiungere due elementi all'array, lasciando spazio per ridimensionarlo. È necessario utilizzare l'istruzione ReDim come segue:
ReDim nums(1)
nums(0) = 12
nums(1) = 23
Il nostro array ora ha due elementi negli indici 0 e 1. Dobbiamo aggiungere un terzo elemento all'indice 3 preservando i due elementi che già possiede. Possiamo farlo come segue:
ReDim Preserve nums(2) nums(2) = 35
L'array ora ha tre elementi.
Una volta popolato un array, il compito successivo è leggere i valori in esso contenuti.
Recupero del contenuto di un array
Recuperare significa accedere agli elementi dell'array. Per accedere a un elemento dell'array, utilizziamo il suo indice. Dimostriamolo utilizzando un esempio.
Passaggio 1) Inizia creando una nuova applicazione console.
Passaggio 2) Aggiungere il seguente codice all'applicazione:
Module Module1 Sub Main() Dim students(0 to 2) As String students(0) = "John" students(1) = "Alice" students(2) = "Antony" Console.WriteLine("First student is {0} ", students(0)) Console.WriteLine("Second student is {0} ", students(1)) Console.WriteLine("Third student is {0} ", students(2)) Console.ReadKey() End Sub End Module
Passaggio 3) Eseguire il codice facendo clic sul pulsante Avvia nella barra degli strumenti. Si aprirà la seguente finestra:
Abbiamo utilizzato il seguente codice:
Spiegazione di Code:
- Creazione di un modulo denominato Modulo1.
- Creazione della sottoprocedura principale.
- Creazione di un array denominato students per memorizzare elementi stringa. L'array memorizzerà gli elementi dall'indice 0 all'indice 2, il che significa che avrà un totale di 3 elementi.
- Aggiungendo il nome John come primo elemento dell'array, ovvero John memorizzato nell'indice 0.
- Aggiungendo il nome Alice come secondo elemento dell'array, ovvero Alice memorizzata nell'indice 1.
- Aggiungendo il nome Antony come terzo elemento dell'array, ovvero Antony memorizzato nell'indice 2.
- Stampa del testo e dell'elemento memorizzato nell'indice 0 dell'array students sulla console. Students(0) ci aiuta ad accedere all'elemento all'indice 0 dell'array denominato students.
- Stampa del testo e dell'elemento memorizzato nell'indice 1 dell'array students sulla console. Students(1) ci aiuta ad accedere all'elemento all'indice 1 dell'array denominato students.
- Stampa del testo e dell'elemento memorizzato nell'indice 2 dell'array students sulla console. Students(2) ci aiuta ad accedere all'elemento all'indice 2 dell'array denominato students.
- Messa in pausa della finestra della console in attesa che l'utente intervenga per chiuderla.
- Fine della sottoprocedura.
- Fine del modulo.
Aggiunta di nuovi elementi a un array
Ciò accadrà solo se hai un array dinamico. Se hai dichiarato un array dimensionale di dimensione fissa ed è pieno di elementi array, non puoi aggiungervi nuovi elementi. Il seguente esempio dimostra come aggiungere nuovi elementi a un array dinamico:
Passaggio 1) Inizia creando una nuova applicazione console.
Passaggio 2) Aggiungere il seguente codice all'applicazione:
Module Module1 Sub Main() Dim nums() As Integer ReDim nums(1) nums(0) = 12 nums(1) = 23 For x = 0 To nums.Length - 1 Console.WriteLine("Initial array element: {0}", nums(x)) Next ReDim Preserve nums(2) nums(2) = 35 For x = 0 To nums.Length - 1 Console.WriteLine("Final array element: {0}", nums(x)) Next Console.ReadKey() End Sub End Module
Passaggio 3) Fare clic sul pulsante Avvia nella barra degli strumenti per eseguire il codice. Dovrebbe apparire la seguente finestra:
Abbiamo utilizzato il seguente codice:
Spiegazione di Code:
- Creazione di un modulo denominato Modulo1.
- Creazione della sottoprocedura principale.
- Creazione di un array denominato nums per contenere valori interi.
- Specificando che l'array soprastante memorizzerà due elementi, ovvero agli indici 0 e 1, lasciando spazio per il ridimensionamento.
- Aggiungendo l'elemento 12 all'indice 0 dell'array nums.
- Aggiungendo l'elemento 23 all'indice 1 dell'array nums.
- Utilizzando un ciclo for per creare una variabile x per aiutarci a scorrere dal primo all'ultimo elemento dell'array nums. Nota che l'array ora ha due elementi, 12 e 23.
- Stampa del testo e degli elementi dell'array sulla console.
- Terminando il ciclo for e saltandoping alla parte successiva del codice.
- Ridimensiona i numeri dell'array per consentire elementi agli indici da 0 a 2. Ora sarà in grado di memorizzare 3 elementi anziché 2. La parola chiave Preserve ci aiuta a mantenere gli elementi correnti dell'array, ovvero 12 e 23.
- Aggiungendo l'elemento 35 all'indice 2 dell'array. L'array ora ha tre elementi, 12, 23 e 35.
- Utilizzando un ciclo for per creare una variabile x per aiutarci a scorrere dal primo all'ultimo elemento dell'array nums. Nota che l'array ora ha tre elementi, 12, 23 e 35.
- Stampa del testo e degli elementi dell'array sulla console.
- Terminando il ciclo for e saltandoping alla parte successiva del codice.
- Metti in pausa la finestra della console in attesa che l'utente effettui un'azione per chiuderla.
- Fine della sottoprocedura.
- Fine del modulo.
Eliminazione di un array
Si consiglia di cancellare l'array una volta terminato, soprattutto quando si ha a che fare con un array dinamico. Questo ti aiuterà a liberare spazio nella memoria.
Per eliminare un array è sufficiente chiamare l'istruzione Erase seguita dal nome dell'array. Per esempio:
Dim nums(1) As Integer nums(0) = 12 nums(1) = 23 Erase nums
Abbiamo dichiarato un array di numeri interi denominato nums e vi abbiamo aggiunto due elementi. L'istruzione Erase nums cancellerà l'array.
Oltre a memorizzare valori, VB.Net offre funzioni integrate per la conversione tra stringhe e array. La prima di queste è la funzione Split.
La funzione di divisione
La funzione `split` fornita da Visual Basic .NET ci permette di suddividere una stringa in più parti e di memorizzarle in un array. L'esempio seguente mostra come utilizzare questa funzione:
Passaggio 1) Creare una nuova applicazione console.
Passaggio 2) Aggiungere il seguente codice all'applicazione:
Module Module1 Sub Main() Dim myarray() As String Dim guru99 As String Dim x As Integer guru99 = "Welcome, to, Guru99" myarray = Split(guru99, ", ") For x = LBound(myarray) To UBound(myarray) Console.WriteLine(myarray(x)) Next Console.ReadKey() End Sub End Module
Passaggio 3) Eseguire il codice facendo clic sul pulsante Avvia nella barra degli strumenti. Dovrebbe apparire la seguente finestra:
Abbiamo utilizzato il seguente codice:
Spiegazione di Code:
- Creazione di un modulo denominato Modulo1.
- Avvio della sottoprocedura principale.
- Creazione di un array denominato myarray per contenere valori stringa.
- Creazione di una variabile stringa denominata guru99.
- Creazione di una variabile intera denominata x.
- Assegnando una stringa alla variabile guru99.
- Dividere la stringa sopra in parti e inserirle nell'array denominato myarray. Il “,” (virgola) è il delimitatore, quindi la funzione split lo utilizzerà per contrassegnare la fine delle varie parti della String.
- Utilizzando la variabile x per scorrere l'array denominato myarray. LBound e UBound specificano rispettivamente i limiti inferiori e superiori dell'array.
- Stampa dei valori dell'array denominato myarray sulla console.
- Fine del ciclo for.
La funzione Unisci
La funzione join ci aiuta a unire più array in una singola stringa. Il seguente esempio lo dimostra:
Passaggio 1) Inizia creando una nuova applicazione console.
Passaggio 2) Aggiungere il seguente codice all'applicazione:
Module Module1 Sub Main() Dim students(0 To 2) As String students(0) = "John" students(1) = "Alice" students(2) = "Antony" Dim classmates As String classmates = Join(students, ", ") Console.WriteLine(classmates) Console.ReadKey() End Sub End Module
Passaggio 3) Eseguire il codice facendo clic sul pulsante Avvia nella barra degli strumenti:
Abbiamo utilizzato il seguente codice:
Spiegazione di Code:
- Creazione di un modulo denominato Modulo1.
- Creazione della sottoprocedura principale.
- Creazione di un array denominato students per contenere 3 valori stringa.
- Aggiungendo il nome John all'indice 0 dell'array.
- Aggiungendo il nome Alice all'indice 1 dell'array.
- Aggiungendo il nome Antony all'indice 2 dell'array.
- Definizione di una variabile denominata compagni di classe di tipo dati stringa.
- Unisci tutti gli elementi dell'array students e separali con una virgola (,). Il risultato di questa operazione verrà assegnato alla variabile classmates.
- Stampare il contenuto della variabile classmates sulla console.
- Messa in pausa della finestra della console in attesa che l'utente intervenga per chiuderla.
- Conclusione della sottoprocedura principale.
- Conclusione del modulo.








