Array Java


Array Java

Le matrici vengono utilizzate per memorizzare più valori in una singola variabile, invece di dichiarare variabili separate per ogni valore.

Per dichiarare un array, definisci il tipo di variabile tra parentesi quadre :

String[] cars;

Abbiamo ora dichiarato una variabile che contiene un array di stringhe. Per inserire valori in esso, possiamo usare un letterale array: posizionare i valori in un elenco separato da virgole, all'interno di parentesi graffe:

String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};

Per creare una matrice di numeri interi, puoi scrivere:

int[] myNum = {10, 20, 30, 40};

Accedi agli elementi di un array

Si accede a un elemento dell'array facendo riferimento al numero di indice.

Questa affermazione accede al valore del primo elemento nelle auto:

Esempio

String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
System.out.println(cars[0]);
// Outputs Volvo

Nota: gli indici di matrice iniziano con 0: [0] è il primo elemento. [1] è il secondo elemento, ecc.


Cambia un elemento della matrice

Per modificare il valore di un elemento specifico, fare riferimento al numero di indice:

Esempio

cars[0] = "Opel";

Esempio

String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
cars[0] = "Opel";
System.out.println(cars[0]);
// Now outputs Opel instead of Volvo



Lunghezza della matrice

Per scoprire quanti elementi ha un array, usa la lengthproprietà:

Esempio

String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
System.out.println(cars.length);
// Outputs 4


Passa attraverso un array

È possibile scorrere gli elementi dell'array con il forciclo e utilizzare la length proprietà per specificare quante volte il ciclo deve essere eseguito.

L'esempio seguente restituisce tutti gli elementi nell'array cars :

Esempio

String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
for (int i = 0; i < cars.length; i++) {
  System.out.println(cars[i]);
}


Passa attraverso un array con For-Each

C'è anche un ciclo " for-each ", che viene utilizzato esclusivamente per scorrere gli elementi negli array:

Sintassi

for (type variable : arrayname) {
  ...
}

L'esempio seguente restituisce tutti gli elementi nell'array cars , utilizzando un ciclo " for-each ":

Esempio

String[] cars = {"Volvo", "BMW", "Ford", "Mazda"};
for (String i : cars) {
  System.out.println(i);
}

L'esempio sopra può essere letto così: per ogni String elemento (chiamato i - come in index) in cars , stampa il valore di i .

Se confronti il forciclo e il ciclo for-each , vedrai che il metodo for-each è più facile da scrivere, non richiede un contatore (usando la proprietà length) ed è più leggibile.


Array multidimensionali

Un array multidimensionale è un array di array.

Per creare un array bidimensionale, aggiungi ogni array all'interno del proprio insieme di parentesi graffe :

Esempio

int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };

myNumbers è ora un array con due array come elementi.

Per accedere agli elementi dell'array myNumbers , specificare due indici: uno per l'array e uno per l'elemento all'interno dell'array. Questo esempio accede al terzo elemento (2) nel secondo array (1) di myNumbers:

Esempio

int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };
int x = myNumbers[1][2];
System.out.println(x); // Outputs 7

Possiamo anche usare un for loopinside another for loopper ottenere gli elementi di un array bidimensionale (dobbiamo ancora puntare ai due indici):

Esempio

public class Main {
  public static void main(String[] args) {
    int[][] myNumbers = { {1, 2, 3, 4}, {5, 6, 7} };
    for (int i = 0; i < myNumbers.length; ++i) {
      for(int j = 0; j < myNumbers[i].length; ++j) {
        System.out.println(myNumbers[i][j]);
      }
    }   } }


Mettiti alla prova con gli esercizi

Esercizio:

Crea un array di tipo Stringchiamato cars.

  = {"Volvo", "BMW", "Ford"};