GLI ARRAY IN JAVA
ARRAY REFERENCE E LENGTH
Quando noi dichiariamo e inizializziamo un Array, come sappiamo stiamo usando un reference type. L’Array myArray contiene il reference che punta all’area di memoria dove è situato l’array.
Se adesso dichiariamo un secondo Array di tipo compatibile con il primo e lo inizializziamo con il primo Array, quello che otteniamo non è la copia dell’Array ma myArray2 contiene il valore del riferimento che punta alla stessa area di memoria di myArray.
Se modifichiamo myArray2, cioè di fatto andando a sostituire un valore, cambia anche myArray.
L’ATTRIBUTO LENGTH
Tutti gli Array hanno un attributo di istanza predefinito che si chiama length e che ci dice il numero di elementi contenuti nell’Array.
Vediamo cosa succede per gli Array bidimensionali e irregolari.
IL LOOP FOR/EACH PER GLI ARRAY
Utilizziamo un ciclo for per visualizzare gli elementi dell’Array myArray.
In Java esiste un altro ciclo For Loop pensato per casi come questo. el è l’elemento prelevato dall’Array myArray, che essendo un array di interi, anche questa variabile sarà di tipo int. Seguono i due punti e l’oggetto da iterare. All’interno del loop el è una variabile in sola lettura (Read-Only).
Vediamo negli Array bidimensionali come si scorrono gli elementi.
INTRODUZIONE AI METODI VARARGS
Abbiamo visto sinora che i parametri di un metodo vengono fissati in fase di dichiarazione. Tuttavia, ci sono dei casi in cui è preferibile un numero arbitrario di argomenti da passare a un metodo.
Tra il Data Type del parametro e il parametro arg abbiamo inserito tre punti. Gli argomenti al parametro arg vengono passati sotto forma di Array con il tipo corrispondente al Data Type assegnato.
Costruiamo una classe di test e invochiamo il metodo.
Possiamo introdurre più parametri, tuttavia se vi è un parametro varargs questo deve essere unico e situato alla fine della lista dei parametri.
OVERLOAD DEI METODI VARARGS
Vediamo come usare l’overload dei varargs con una figura.
Vediamo la classe di test.
Cosa succede se non rispettiamo la firma? Quale metodo verrà invocato? La risposta la trovi nel codice scaricabile da GITHUB.
LINK AI POST PRECEDENTI
LINK AL CODICE SU GITHUB
ESECUZIONE DEL CODICE DI ESEMPIO
- Scaricare il codice da GITHUB, lanciare il file JAR con il seguente comando in Visual Studio Code, posizionandosi nella directory contenente il JAR.
java -jar –enable-preview CorsoJava.jar
- Oppure mettere in esecuzione il main che si trova nel file CorsoJava.java.
Scrivi un commento