Inicializar todos os elementos do array para zero em Java

Mohammad Irfan 12 outubro 2023
  1. Inicializar elementos do array para zero em Java
  2. Inicialize os elementos do array para zero usando o método fill() em Java
  3. Inicialize os elementos do array para zero usando o método nCopies() em Java
  4. Inicializar elementos do array para zero por reatribuição em Java
  5. Inicialize os elementos do array para zero usando o loop for em Java
Inicializar todos os elementos do array para zero em Java

Este tutorial apresenta programas sobre como inicializar todos os elementos do array para zero em Java. Você encontrará exemplos de códigos úteis para guiá-lo neste processo.

Em Java, array contém um tipo semelhante de dados. Este objeto é inicializado em tempo de execução pelo compilador; seu valor depende do tipo de array - isso significa que um array inteiro será inicializado em 0 e o array string será nulo. Neste exemplo, inicializaremos os elementos do array para zero usando métodos como fill() e nCopies(), e também alguns códigos personalizados.

Inicializar elementos do array para zero em Java

Por padrão em Java, tipos de dados como arrays int, short, byte e long são inicializados com 0. Portanto, se você criar um novo array desses tipos, não precisa inicializá-los com zero porque já é sua configuração padrão . No exemplo abaixo, criamos dois arrays com os tipos int e byte e vemos que seu valor padrão é 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]);
    }
  }
}

Resultado:

0
0
0
0

Inicialize os elementos do array para zero usando o método fill() em Java

Se um array já possui elementos e você deseja inicializá-lo com 0, você deve usar o método fill() da classe Arrays que preenche o valor especificado para o array. Veja o exemplo abaixo:

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]);
    }
  }
}

Resultado:

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

Inicialize os elementos do array para zero usando o método nCopies() em Java

Aqui, usamos o método nCopies() da classe Collections que cria uma cópia do array, e o método toArray() converte os elementos em um array inteiro. Veja o exemplo abaixo:

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]);
    }
  }
}

Resultado:

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

Inicializar elementos do array para zero por reatribuição em Java

Este método é uma nova solução complicada onde criamos um novo array com o mesmo tamanho e tipo e então atribuímos sua referência ao array original que faz o reset do array original. Como resultado, todos os elementos são inicializados em 0. Aqui está um exemplo:

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]);
    }
  }
}

Resultado:

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

Inicialize os elementos do array para zero usando o loop for em Java

Este processo é uma das abordagens mais antigas e menos recomendadas, em que usamos um loop for. Em cada iteração, atribuímos 0 a cada índice do array que faz com que todos os elementos do array sejam inicializados com 0. Verifique este bloco de código como exemplo:

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]);
    }
  }
}

Resultado:

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

Artigo relacionado - Java Array