Comprobar si un objeto es nulo en Java
-
Java comprueba si el objeto es nulo usando el operador
==
-
Java Comprueba si el objeto es nulo usando
java.utils.Objects

Este tutorial repasará los métodos para comprobar si un objeto es nulo en Java con algunos ejemplos brevemente explicados.
Java comprueba si el objeto es nulo usando el operador ==
Como ejemplo, hemos creado dos clases: User1
y User2
. La clase User1
tiene una variable de instancia name
y los métodos Getter
y Setter
para actualizar y recuperar la variable de instancia name
. La clase User2
tiene un método, getUser1Object
, que devuelve la instancia de la clase User1
.
En el método main, creamos un objeto de la clase User2
llamado user
y llamamos al getUser1Object()
en él, que devuelve la instancia de la clase User1
. Ahora comprobamos si la instancia de la clase User1
devuelta por el método es nula o no usando el operador ==
en la condición if-else
.
Si el objeto devuelto no es null
, podemos establecer el name
en la clase User1
llamando al método setter
de la clase y pasándole una cadena 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 Comprueba si el objeto es nulo usando java.utils.Objects
La clase java.utils.Objects
tiene métodos de utilidad estáticos para operar un objeto. Uno de los métodos es isNull()
, que devuelve un valor booleano si la referencia proporcionada es null, de lo contrario devuelve false.
Hemos creado dos clases - User1
y User2
como se muestra en el siguiente código. En el método main, creamos un objeto de la clase User2
usando la palabra clave new
y llamamos al método getUser1Object()
. Devuelve un objeto de la clase User1
, que luego guardamos en getUser1Object
.
Para comprobar si es nulo, llamamos al método isNull()
y le pasamos el objeto getUserObject
como parámetro. Devuelve true ya que el objeto pasado es null.
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 Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.
LinkedIn