Inizializza tutti gli elementi dell'array su zero in Java

Mohammad Irfan 12 ottobre 2023
  1. Inizializza gli elementi dell’array a zero in Java
  2. Inizializza gli elementi dell’array a zero utilizzando il metodo fill() in Java
  3. Inizializza gli elementi dell’array a zero utilizzando il metodo nCopies() in Java
  4. Inizializza gli elementi dell’array a zero per riassegnazione in Java
  5. Inizializza gli elementi dell’array a zero utilizzando il cicli for in Java
Inizializza tutti gli elementi dell'array su zero in Java

Questo tutorial introduce i programmi su come inizializzare tutti gli elementi dell’array a zero in Java. Troverai utili codici di esempio per guidarti attraverso questo processo.

In Java, l’array contiene un tipo di dati simile. Questo oggetto viene inizializzato in fase di esecuzione dal compilatore; il suo valore dipende dal tipo di array: questo significa che un array di interi verrà inizializzato a 0 e l’array di stringhe sarà nullo. In questo esempio, inizializzeremo gli elementi dell’array a zero utilizzando metodi come fill() e nCopies() e anche alcuni codici personalizzati.

Inizializza gli elementi dell’array a zero in Java

Per impostazione predefinita in Java, i tipi di dati come int, short, byte e long array vengono inizializzati con 0. Quindi, se crei un nuovo array di questi tipi, non è necessario inizializzarli con zero perché è già la loro impostazione predefinita . Nell’esempio seguente, abbiamo creato due array con i tipi int e byte e vediamo che il loro valore predefinito è zero.

public class SimpleTesting {
  public static void main(String[] args) {
    int arr[] = new int[2];
    for (int i = 0; i < arr.length; i++) {
      System.out.println(arr[i]);
    }
    byte barr[] = new byte[2];
    for (int i = 0; i < barr.length; i++) {
      System.out.println(barr[i]);
    }
  }
}

Produzione:

0
0
0
0

Inizializza gli elementi dell’array a zero utilizzando il metodo fill() in Java

Se un array ha già elementi e vuoi inizializzarlo con 0, dovresti usare il metodo fill() della classe Arrays che riempie il valore specificato nell’array. Vedi l’esempio qui sotto:

import java.util.Arrays;
public class SimpleTesting {
  public static void main(String[] args) {
    int arr[] = new int[] {12, 23, 45, 58};
    for (int i = 0; i < arr.length; i++) {
      System.out.println(arr[i]);
    }
    System.out.println("Array after initialize to zero");
    Arrays.fill(arr, 0);
    for (int i = 0; i < arr.length; i++) {
      System.out.println(arr[i]);
    }
  }
}

Produzione:

12
23
45
58
Array after initialize to zero
0
0
0
0

Inizializza gli elementi dell’array a zero utilizzando il metodo nCopies() in Java

Qui abbiamo usato il metodo nCopies() della classe Collections che crea una copia dell’array e il metodo toArray() converte gli elementi in un array intero. Vedi l’esempio qui sotto:

import java.util.Collections;
public class SimpleTesting {
  public static void main(String[] args) {
    int arr[] = new int[] {12, 23, 45, 58};
    for (int i = 0; i < arr.length; i++) {
      System.out.println(arr[i]);
    }
    System.out.println("Array after initialize to zero");
    Integer[] arr2 = Collections.nCopies(arr.length, 0).toArray(new Integer[0]);
    for (int i = 0; i < arr2.length; i++) {
      System.out.println(arr2[i]);
    }
  }
}

Produzione:

12
23
45
58
Array after initialize to zero
0
0
0
0

Inizializza gli elementi dell’array a zero per riassegnazione in Java

Questo metodo è una nuova soluzione complicata in cui creiamo un nuovo array con la stessa dimensione e tipo e quindi assegniamo il suo riferimento all’array originale che ripristina l’array originale. Di conseguenza, tutti gli elementi vengono inizializzati a 0. Ecco un esempio:

public class SimpleTesting {
  public static void main(String[] args) {
    int arr[] = new int[] {12, 23, 45, 58};
    for (int i = 0; i < arr.length; i++) {
      System.out.println(arr[i]);
    }
    int[] arr2 = new int[4];
    arr = arr2;
    System.out.println("Array after initialize to zero");
    for (int i = 0; i < arr.length; i++) {
      System.out.println(arr[i]);
    }
  }
}

Produzione:

12
23
45
58
Array after initialize to zero
0
0
0
0

Inizializza gli elementi dell’array a zero utilizzando il cicli for in Java

Questo processo è uno degli approcci più vecchi e meno consigliati in cui utilizziamo un cicli for. In ogni iterazione, assegniamo 0 a ciascun indice dell’array che fa inizializzare tutti gli elementi dell’array a 0. Controlla questo blocco di codice come esempio:

public class SimpleTesting {
  public static void main(String[] args) {
    int arr[] = new int[] {12, 23, 45, 58};
    for (int i = 0; i < arr.length; i++) {
      System.out.println(arr[i]);
    }
    System.out.println("Array after initialize to zero");
    for (int i = 0; i < arr.length; i++) {
      arr[i] = 0;
    }
    for (int i = 0; i < arr.length; i++) {
      System.out.println(arr[i]);
    }
  }
}

Produzione:

12
23
45
58
Array after initialize to zero
0
0
0
0

Articolo correlato - Java Array