演習課題「emptyメソッド を使ってみよう」
emptyメソッドを用いて、保持する値のない、空のOptionalクラスのインスタンスを生成し、正しく出力されるよう、コードを修正してください。
期待する出力値
Optional.empty
演習課題「ofメソッド を使ってみよう」
ofメソッドを用いて、保持する値がpaizaである、Optionalクラスのインスタンスを生成し、正しく出力されるようコードを修正してください。
期待する出力値
Optional[paiza]
演習課題「isPresentメソッド を使ってみよう」
isPresentメソッドを用いて、インスタンス変数option1、option2が値を保持しているか判定し、保持している場合は true、保持していない場合は false が出力されるよう、コードを修正してください。
期待する出力値
true
false
演習課題「getメソッド を使ってみよう」
getメソッドを用いて、Optionalインスタンスである、option1、option2のうち、値があるものに関して、その値を出力するよう、コードを修正してください。
ただし、値を持たないものに関しては、コメントアウトしてください。
期待する出力値
paiza
演習課題「orElseメソッド を使ってみよう」
orElseメソッドを用いて、Optionalインスタンスである、option1、option2のうち、値がないものに関しては、kirishimaという値を与えたうえで、それぞれの値を出力するよう、コードを修正してください。
期待する出力値
paiza
kirishima
演習課題「filterメソッド を使ってみよう」
filterメソッドを用いて、Optionalインスタンスであるoption1、option2のうち、値があり、かつその値がpaizaのものに関しては、値を保持したOptionalインスタンスを出力し、そうでない場合は空のOptionalインスタンスを出力するよう、コードを修正してください。
期待する出力値
Optional[paiza]
Optional.empty
#12:Optionalクラス
このチャプターでは、Optionalクラスについて学習します。
import java.util.*;
import java.util.function.*;
import java.util.stream.*;
public class Main {
    public static void main(String... args) {
        Optional<String> o1 = Optional.empty();
        Optional<String> o2 = Optional.of("a");
        System.out.println(o1.filter(s -> "a".equals(s)));
        System.out.println(o2.filter(s -> "a".equals(s)));
    }
}