Verificar se um Objecto é Nulo em Java

Rupam Yadav 12 outubro 2023
  1. Java Verificar se Object é nulo Utilizando o operador ==
  2. Java Verificar se o Object é Nulo Utilizando java.utils.Objects
Verificar se um Objecto é Nulo em Java

Este tutorial irá percorrer os métodos para verificar se um objecto é nulo em Java com alguns exemplos brevemente explicados.

Java Verificar se Object é nulo Utilizando o operador ==

Como exemplo, criámos duas classes - User1 e User2. A classe User1 tem uma variável de instância name e os métodos Getter e Setter para actualizar e recuperar a variável de instância name. A classe User2 tem um método, getUser1Object, que retorna a instância da classe User1.

No método main, criamos um objecto da classe User2 chamado user e chamamos-lhe getUser1Object(), que retorna a instância da classe User1. Agora verificamos se a instância da classe User1 devolvida pelo método é nula ou não, utilizando o operador == na condição if-else.

Se o objecto devolvido não for null, podemos definir o name na classe User1 chamando o método setter da classe e passando-lhe uma string personalizada como parâmetro.

public class JavaCheckNullObject {
  public static void main(String[] args) {
    User2 user;
    user = new User2();

    User1 getUserObject = user.getUser1Object();

    if (getUserObject == null) {
      System.out.println("Object is Null");
    } else {
      System.out.println("Not Null");

      getUserObject.setName("Sam");
      System.out.println(getUserObject.getName());
    }
  }
}

class User2 {
  User1 user;

  public User1 getUser1Object() {
    return user;
  }
}

class User1 {
  String name;

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }
}

Resultado:

Object is Null

Java Verificar se o Object é Nulo Utilizando java.utils.Objects

A classe java.utils.Objects tem métodos de utilidade estática para operar um objecto. Um dos métodos é isNull(), que retorna um valor booleano se a referência fornecida for nula, caso contrário, retorna falso.

Criámos duas classes - User1 e User2, como se mostra no código abaixo. No método main, criámos um objecto da classe User2 utilizando a palavra-chave new e chamámos o método getUser1Object(). Retorna um objecto da classe User1, que mais tarde armazenamos em getUser1Object.

Para verificar se é nulo, chamamos o método isNull() e passamos o objecto getUserObject como parâmetro. Retorna verdadeiro, uma vez que o objecto passado é nulo.

import java.util.Objects;

public class JavaCheckNullObject {
  public static void main(String[] args) {
    User2 user;
    user = new User2();

    User1 getUserObject = user.getUser1Object();

    if (Objects.isNull(getUserObject)) {
      System.out.println("Object is Null");
    } else {
      System.out.println("Not Null");

      getUserObject.setName("Sam");
      System.out.println(getUserObject.getName());
    }
  }
}
class User2 {
  User1 user;

  public User1 getUser1Object() {
    return user;
  }
}

class User1 {
  String name;

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }
}

Resultado:

Object is Null
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

Artigo relacionado - Java Object