Como verificar se um vetor é nulo/imposto em Java

Mohammad Irfan 12 outubro 2023 Java Java Array
  1. Array Nulo em Java
  2. Array Contém Valores Nulos
  3. Array vazio em Java
  4. Verificar Array Null usando a biblioteca Apache Commons em Java
  5. Verificar Array Null utilizando Java 8
Como verificar se um vetor é nulo/imposto em Java

Este tutorial introduz como verificar se um array é nulo ou vazio em Java e também lista alguns exemplos de códigos para entender o processo de verificação nulo.

Array Nulo em Java

Em Java, um array é um objeto que contém tipos similares de dados. Ele só pode ser nulo se não for instanciado ou apontar para uma referência nula.

Neste exemplo, criamos duas arrays. O array arr é declarado mas não instanciado. Ela não contém nenhum dado e se refere a uma referência nula (valor padrão) atribuída pelo compilador. O array arr2 é declarado e explicitamente atribuído a nulo para criar um array nulo.

Podemos utilizar este exemplo para verificar se o array é nulo ou não.

public class SimpleTesting {
  String[] arr;
  String[] arr2 = null;

  public static void main(String[] args) {
    SimpleTesting obj = new SimpleTesting();
    if (obj.arr == null) {
      System.out.println("The array is null");
    }
    if (obj.arr2 == null) {
      System.out.println("The array2 is null");
    }
  }
}

Resultado:

The array is null
The array2 is null

Array Contém Valores Nulos

Este é o segundo cenário onde uma array contém valores nulos. Nesse caso, podemos considerar um array como sendo nulo.

Suponha-se que tenhamos um array de strings que pode conter 5 elementos. Uma vez que o array não é inicializado, então ele contém valores nulos (valor padrão) atribuídos pelo compilador.

public class SimpleTesting {
  String[] arr = new String[5];

  public static void main(String[] args) {
    boolean containNull = true;
    SimpleTesting obj = new SimpleTesting();
    for (int i = 0; i < obj.arr.length; i++) {
      if (obj.arr[i] != null) {
        containNull = false;
        break;
      }
    }
    if (containNull) {
      System.out.println("Array is null");
    }
  }
}

Resultado:

Array is null

Array vazio em Java

Uma array está vazia somente quando contém zero(0) elementos e tem comprimento zero. Podemos testá-lo usando a propriedade de comprimento do objeto array.

public class SimpleTesting {
  String[] arr = new String[0];

  public static void main(String[] args) {
    SimpleTesting obj = new SimpleTesting();
    if (obj.arr.length == 0) {
      System.out.println("The array is Empty");
    }
  }
}

Resultado:

The array is Empty

Verificar Array Null usando a biblioteca Apache Commons em Java

Se você estiver trabalhando com Apache então utilize a classe ArrayUtils para verificar se uma array está vazia. A classe ArrayUtils fornece um método isEmpty() que retorna um valor booleano, verdadeiro ou falso. Para mais informações sobre a biblioteca apache visite aqui.

import org.apache.commons.lang3.ArrayUtils;

public class SimpleTesting {
  String[] arr = new String[0];

  public static void main(String[] args) {
    SimpleTesting obj = new SimpleTesting();
    Boolean isEmpty = ArrayUtils.isEmpty(obj.arr);
    if (isEmpty) {
      System.out.println("Array is Empty");
    }
  }
}

Resultado:

Array is Empty

Verificar Array Null utilizando Java 8

Se você estiver trabalhando com Java 8 ou versão superior, então você pode utilizar o método stream() da classe Arrays para chamar o método allMatch() para verificar se o array contém valores nulos ou não.

Este é o caso quando o array contém valores nulos.

import java.util.Arrays;
import java.util.Objects;

public class SimpleTesting {
  String[] arr = new String[10];

  public static void main(String[] args) {
    SimpleTesting obj = new SimpleTesting();
    Boolean containNull = Arrays.stream(obj.arr).allMatch(Objects::nonNull);
    if (!containNull) {
      System.out.println("Array is null");
    }
  }
}

Resultado:

Array is null
Está gostando dos nossos tutoriais? Inscreva-se no DelftStack no YouTube para nos apoiar na criação de mais vídeos tutoriais de alta qualidade. Inscrever-se

Artigo relacionado - Java Array