Java でオブジェクトが Null かどうかをチェックする
-
Java で
==
演算子を使用してObject
が Null であるかどうかを確認する -
Java で
java.utils.Objects
を使用してObject
が Null かどうかを確認する
このチュートリアルでは、Java でオブジェクトが NULL であるかどうかをチェックする方法を、簡単な例を挙げて説明します。
Java で ==
演算子を使用して Object
が Null であるかどうかを確認する
例として、User1
と User2
の 2つのクラスを作成しました。クラス User1
は 1つのインスタンス変数 name
と、インスタンス変数 name
を更新したり取得したりするための Getter
と Setter
メソッドを持ちます。User2
クラスには、クラス User1
のインスタンスを返す getUser1Object
というメソッドが一つあります。
main
メソッドでは、User2
クラスの user
という名前のオブジェクトを作成して getUser1Object()
を呼び出し、クラス User1
のインスタンスを返します。ここで、if-else
条件で ==
演算子を用いて、メソッドが返した User1
クラスのインスタンスがヌルかどうかを調べます。
返されたオブジェクトが null
でなければ、User1
クラスの setter
メソッドを呼び出してカスタム文字列をパラメータとして渡すことで User1
クラスの name
を設定することができます。
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;
}
}
出力:
Object is Null
Java で java.utils.Objects
を使用して Object
が Null かどうかを確認する
java.utils.Objects
クラスには、オブジェクトを操作するための静的なユーティリティメソッドがあります。メソッドの一つは isNull()
で、指定された参照が null であればブール値を返し、そうでなければ false を返します。
以下のコードに示すように、User1
と User2
の 2つのクラスを作成しました。メインメソッドでは、new
キーワードを用いて User2
クラスのオブジェクトを作成し、getUser1Object()
メソッドを呼び出しています。これはクラス User1
のオブジェクトを返し、後に getUser1Object
に格納します。
null
であるかどうかを調べるには、isNull()
メソッドを呼び出してオブジェクト getUserObject
をパラメータとして渡します。渡されたオブジェクトが NULL であることを確認するために、isNull()
メソッドを呼び出します。
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;
}
}
出力:
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