Corsi on-line
Chiudi
Newsletter:
  • Seguici su Facebook
  • Seguici su Twitter
  • Seguici su Google+
  • Seguici via RSS
  • Seguici col tuo Smartphone

Gli Array

Come abbiamo preannunciato è possibile avere più di un valore associato ad una variabile, come una lista di valori; questo è possibile grazie agli Array.

Un Array (anche detto vettore) è 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 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, 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.

Corsi
Corso LinuxCorso Linux
Guida completa al sistema open-source. A partire da 39 €.
Corso PHPCorso PHP
Corso completo per la creazione di siti Web dinamici. A partire da 49 €.
Corso Ruby e Ruby On RailsCorso Ruby e Ruby On Rails
Creare software ed applicazioni Web con Ruby e ROR. A partire da 49 €.
Sommario
Annunci

Mr.Webmaster

Pubblicità
Chi Siamo
Contattaci
Collabora
Note Legali
© 2003 - 2012 Mr.Webmaster - Il portale dei Webmaster Italiani - Tutti i diritti riservati | Powered by IKIweb Internet Media S.r.l. - PIVA 02848390122