Inizializza un array di stringhe in Java

Hassan Saeed 12 ottobre 2023
  1. Inizializza l’array sul valore predefinito in Java
  2. Inizializza array su valori diretti in Java
  3. Inizializza array su valori utilizzando Stream in Java
Inizializza un array di stringhe in Java

Questo tutorial introduce i metodi per inizializzare un array di stringhe in Java.

L’array Java ha una lunghezza fissa; pertanto, dobbiamo dichiarare un array e inizializzarlo in modo che possa allocare la corretta memoria di memoria per gli elementi. Se dichiariamo solo l’array, non c’è memoria allocata per gli elementi e verrà generato un errore quando si tenta di assegnare un valore a qualsiasi indice dell’array.

Inizializza l’array sul valore predefinito in Java

L’esempio seguente illustra come inizializzare un array String in Java. Crea un array della lunghezza specificata contenente i valori di default null in tutti gli indici, impostati successivamente sul valore desiderato.

public class MyClass {
  public static void main(String args[]) {
    String[] myArr;
    myArr = new String[5];
    myArr[0] = "First";

    for (int i = 0; i < myArr.length; i++) {
      System.out.println(myArr[i]);
    }
  }
}

Produzione:

First
null
null
null
null

Abbiamo riassegnato il valore al primo indice a "First" mentre tutti gli altri indici contengono il valore predefinito null.

Vediamo cosa succede se proviamo ad assegnare un valore a qualsiasi indice di array senza inizializzare l’array.

public class MyClass {
  public static void main(String args[]) {
    String[] myArr;
    myArr[0] = "First";
  }
}

Produzione:

/MyClass.java:4: error: variable myArr might not have been initialized
        myArr[0] = "First";
        ^
1 error

Inizializza array su valori diretti in Java

Possiamo anche inizializzare un array con i valori di cui abbiamo bisogno nell’array. In questo caso, la lunghezza dell’array sarebbe fissata al numero di elementi su cui lo inizializziamo. L’esempio seguente lo illustra:

public class MyClass {
  public static void main(String args[]) {
    String[] myArr = {"First", "Second"};

    for (int i = 0; i < myArr.length; i++) {
      System.out.println(myArr[i]);
    }
  }
}

Produzione:

First
Second

Il blocco di codice precedente ha creato un array di lunghezza 2 poiché abbiamo fornito 2 valori nell’inizializzazione.

Inizializza array su valori utilizzando Stream in Java

Per Java 8 e versioni successive, possiamo utilizzare Stream per inizializzare un array di stringhe con valori dati. L’esempio seguente lo illustra:

import java.util.stream.*;
public class MyClass {
  public static void main(String args[]) {
    String[] strings = Stream.of("First", "Second", "Third").toArray(String[] ::new);
    for (int i = 0; i < strings.length; i++) {
      System.out.println(strings[i]);
    }
  }
}

Produzione:

First
Second
Third

Articolo correlato - Java Array