Comment vérifier si un tableau est nul/vide en Java

Mohammad Irfan 12 octobre 2023
  1. Tableau nul en Java
  2. Le tableau contient des valeurs nulles
  3. Tableau vide en Java
  4. Vérification de la nullité d’un tableau à l’aide de la bibliothèque Apache Commons en Java
  5. Vérification de la valeur nulle d’un tableau en utilisant Java 8
Comment vérifier si un tableau est nul/vide en Java

Ce tutoriel présente la manière de vérifier si un tableau est nul ou vide en Java et donne également quelques exemples de codes pour comprendre le processus de vérification des valeurs nulles.

Tableau nul en Java

En Java, un tableau est un objet qui contient des types de données similaires. Il ne peut être nul que s’il n’est pas instancié ou s’il pointe vers une référence nulle.

Dans cet exemple, nous avons créé deux tableaux. Le tableau arr est déclaré mais non instancié. Il ne contient aucune donnée et se réfère à une référence nulle (valeur par défaut) attribuée par le compilateur. Le tableau arr2 est déclaré et explicitement assigné à null pour créer un tableau nul.

Nous pouvons utiliser cet exemple pour vérifier si le tableau est nul ou non.

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

Production:

The array is null
The array2 is null

Le tableau contient des valeurs nulles

C’est le deuxième scénario où un tableau contient des valeurs nulles. Dans ce cas, nous pouvons considérer qu’un tableau est nul.

Supposons que nous ayons un tableau de chaînes de caractères qui peut contenir 5 éléments. Comme le tableau n’est pas initialisé, il contient des valeurs nulles (valeur par défaut) attribuées par le compilateur.

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

Production:

Array is null

Tableau vide en Java

Un tableau n’est vide que lorsqu’il contient zéro (0) éléments et a une longueur nulle. Nous pouvons le tester en utilisant la propriété length de l’objet tableau.

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

Production:

The array is Empty

Vérification de la nullité d’un tableau à l’aide de la bibliothèque Apache Commons en Java

Si vous travaillez avec Apache alors utilisez la classe ArrayUtils pour vérifier si un tableau est vide. La classe ArrayUtils fournit une méthode isEmpty() qui retourne une valeur booléenne soit vraie, soit fausse. Pour plus d’informations sur la bibliothèque apache visitez ici.

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

Production:

Array is Empty

Vérification de la valeur nulle d’un tableau en utilisant Java 8

Si vous travaillez avec Java 8 ou une version supérieure, vous pouvez utiliser la méthode stream() de la classe Arrays pour appeler la méthode allMatch() afin de vérifier si le tableau contient des valeurs nulles ou non.

C’est le cas lorsque le tableau contient des valeurs nulles.

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

Production:

Array is null

Article connexe - Java Array