back to top

Gli Array in Java

Come abbiamo preannunciato è possibile avere più di un valore associato ad una variabile, come una lista di valori; questo è possibile grazie agli Array. In questo articolo vedremo, quindi, come gestire gli Array in Java.

Col termine Array (anche detto vettore) viene indicato, nella programmazione, un gruppo di elementi che viene dichiarato inizialmente specificandone il numero. Un Array può assegnare e restituire il valore di ciascun elemento accedendovi mediante un indice creato automaticamente.

Un Array si distingue da una variabile normale per l’uso delle parentesi quadre [] ed è a tutti gli effetti un Oggetto, quindi deve essere dichiarato all’interno dei nostri listati Java con la famosa parola chiave new. Nella dichiarazione possiamo assegnare il numero massimo di argomenti da contenere, utilizzando il tipo di dato seguito da un numero tra le parentesi quadre, come nell’esempio:

int x[] = new int[10];

In questo caso "x[]" potrà contenere al massimo 10 valori, possiamo assegnare e visualizzare i valori corrispondenti utilizzando la forma sintattica seguente:

x[0] = 10;
x[1] = 20;

System.out.println(x[0]); // scrive a schermo 10
System.out.println(x[1]); // scrive a schermo 20

Facciamo un esempio pratico utilizzando i cicli for mostrati nella lezione precedente:

class ProvaArray1
{
  public static void main(String args[]) {
    int x[] = new int[10];
    for (int i=0; i<=9; i++) {
      x[i] = i;
    }
    
    for (int i=0; i<=9; i++) {
      System.out.println("x["+i+"] = "+x[i]);
    }
    
    // esempio di un Array di Stringhe

    String stringa[] = {"primo","secondo","terzo"};
    for (int i=0; i<=2; i++)
      System.out.println("stringa["+i+"] = "+stringa[i]);
    }
}

Prima dichiariamo "x[]" come nuovo oggetto Array di massimo 10 elementi. Il primo ciclo for ci permette di assegnare ad ogni elemento dell’Array il rispettivo numero "i".

Nel secondo ciclo scriviamo su schermo il risultato. Il secondo Array è formato da elementi Stringa (Oggetti istanziati dalla Classe String) e possiamo osservare come è possibile direttamente inserire i valori per ogni elemento stesso nella dichiarazione, come anche nel seguente esempio:

class ProvaArray2 {
  public static void main(String args[]) {
    float numero[] = {2.5f, 4.5f, 8.9f, 5.0f, 8.9f};

    // notate la definizione di float con la f come
    // ultimo carattere del valore

     float somma = 0.0f;
     for(int i=0; i<= 4; i++)
       somma = somma + numero[i];
     
     System.out.println("somma = " + somma)
  }
}

In quest’ultimo esempio utilizziamo il ciclo for per sommare tutti i valori dell’Array di numeri float. Il risultato sarà:

somma = 29.8

E’ anche possibile utilizzare Array multidimensionali in Java, ovvero con più di un indice, per esempio possiamo emulare una tabella grazie ad un Array Bidimensionale, impostando le colonne e le righe. Facciamo un esempio:

class ProvaArray3 {
  public static void main(String args[]) {
    int x[][] = new int[2][2];
    
    // assegnamo i valori a x[i][j]

    for(int i=0; i<=1; i++) {
      for(int j=0; j<=1; j++) {
        x[i][j] = i+j;
      }
    }
    
    for(int i=0; i<=1; i++) {
      for(int j=0; j<=1; j++) {
        System.out.println("x["+i+","+j+"] = "+x[i][j]);
      }
    }

    // Proviamo anche con le Stringhe

    String st[][]={{"riga 0 colonna 0","riga 0 colonna 1"},
    {"riga 1 colonna 0","riga 1 colonna 1"}};

    // scriviamo a schermo i valori

    for(int i=0; i<=1; i++)
      for(int j=0; j<=1; j++)
        System.out.println("st["+i+","+j+"] = "+st[i][j]);
  }
}

Naturalmente abbiamo voluto fare un esempio con solo un Array di due dimensioni, ma come avrete già intuito è possibile sviluppare anche Array di tre o ulteriori dimensioni.

Pubblicitร 
Articolo precedente
Articolo successivo