読者です 読者をやめる 読者になる 読者になる

log

日記です

java8でOptionをたくさん扱うには?

Java

optionがたくさんあるときって、どういう風にやってるのかな?
scalaだとfor式、haskellだとdoとかが答えなのかなと思い。
java8は・・・とりあえずflatMapのネスト?

// flatMap
Optional<Integer> maybeA = Optional.of(1);
Optional<Integer> maybeB = Optional.of(2);
Optional<Integer> maybeC = Optional.of(3);

System.out.println(
  maybeA.flatMap(a ->
    maybeB.flatMap(b ->
      maybeC.map(c -> a + b + c)
    )
  )
);