Optionalとは
Optionalは、メソッドの戻り値としてnullを返す可能性があることを明示的に示したいときに使用します。
メソッドがnullを返す可能性があるということを示すことで、
そのメソッドを利用するプログラムをより安全に実装することができるようになります。
#orElseの使い方
Optionalのオブジェクトはnullの可能性があるオブジェクトの型を指定
して宣言します。
OptionalのオブジェクトにはofNullableメソッドの戻り値を代入
します。
Optional.ofNullableメソッドの引数がnullの場合にorElseメソッドの引数の値を返します。
(以下の場合は「Nullです」を返します)
nullでない場合はnullではないその値を返します。
String str = null;
Optional<String> nullableString = Optional.ofNullable(str);
System.out.println(nullableString.orElse("Nullです"));
Optional を使用することで以下のような null チェックをする必要がなくなり、コードを少なくできます。
また、null チェックを忘れることもなくなるので、安全に実装することが出来ます。
String value = getValue(); // valueはgetValueの戻り値を取得する
if (value != null) { // nullチェックを行う
System.out.println(value.length()); // lengthメソッドを呼ぶ
}