関数型Java
Java8以降で使える関数型プログラミング要素をまとめたい
Optional
- ScalaだとOption
- 【Optional入門】Javaでnullを扱うベストプラクティスのご紹介
- Optional<> を map してやると、mapの中で処理されるのはnullではない場合になる
- Optionalの中身を平らにする(flatten)場合はflatMapを使う
import java.util.Optional; class Wandbox { public static void main(String[] args) { Optional<String> opt1 = Optional.ofNullable("普通の文字列"); String a1 = opt1.map(s -> s + " not null!").orElse("null!"); System.out.println(a1); Optional<String> opt2 = Optional.ofNullable(null); String a2 = opt2.map(s -> s + " not null!").orElse("null!"); System.out.println(a2); } } 普通の文字列 not null! null!
Javaで型クラス
- TODO
- この辺を使う