はじめに
今回はjavaの「NULL」の比較にについていろんな方法を試してみたいと思います。
NULLとは
NULLとは、変数に対して何も入っていない状態のことです。空やスペースとも違い本当に何も入っていない状態のことを指します。
演算子によるNULL比較
「==」や「!=」によってNULL比較することができます。
package com.example;
import java.util.ArrayList;
import java.util.List;
public class App {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String str = null;
if (str == null) {
System.out.print("nullです。");
}
List<Integer> list = null;
list = new ArrayList<>();
if (list != null) {
System.out.print("nullではありません。");
}
}
}
三項演算子による比較
三項演算子によってもNULL比較をすることができます。
構文
条件式 ? trueの場合 : falseの場合
例
package com.example;
public class App {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String str = null;
String message = (str == null) ? "nullです" : "nullじゃないです";
System.out.println(message);
}
}
Objects.isNullメソッドによる比較
java.util.ObjectsクラスのisNullメソッドを使用することでもnull比較を実施することができます。
構文
// インポート
import java.util.Objects;
Objects.isNull(判定する変数);
例
package com.example;
import java.util.Objects;
public class App {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String str = null;
if (Objects.isNull(str)) {
System.out.println("nullです");
}
}
}
Optionalクラスによる比較
java.util.OptionalクラスのorElseメソッドを使用することで、nullだった際の動作を指定することができます。
定義
// インポート
import java.util.Optional;
// 宣言
Optional<String> check = Optional.ofNullable(判定対象の変数);
// nullかチェックしnullだった場合は()内の値を格納
String result = check.orElse(Nullだった場合の処理);
例
package com.example;
import java.util.Optional;
public class App {
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
String str = null;
Optional<String> check = Optional.ofNullable(str);
String result = check.orElse("Nullの時の値");
System.out.println(result);
}
}
ドキュメント
【公式ドキュメント】
Java SE Specifications (oracle.com)
最後に
Javaの環境構築は、この記事を参照してみてください。
【開発環境構築】VS CodeでJavaを使用するための環境構築を実施する – SEもりのLog (selifemorizo.com)
以上、ログになります。
これからも継続していきましょう!!
コメント