0
0

(java gold) flatmap

Posted at

flatmap

Optionalオブジェクトが値を保持している場合に、その値を別のOptionalオブジェクトに変換するためのメソッドである。変換されたOptionalオブジェクトが返される。

flatMap()メソッドは、以下のようなシグネチャを持っている。

<U> Optional<U> flatMap(Function<? super T, Optional<U>> mapper)

mapとflatmapの比較

戻り値の比較

  • map()メソッドはOptionaalであり変換操作によって得られた値を新しいOptionalオブジェクトとして戻す。
  • flatmap()メソッドは値の変換操作によって得られたOptionalオブジェクトを自動的に解消しフラットなOptionalを戻す。

使い分け

map()メソッド:

  • 単純な値の変換を行いたい場合
  • 変換操作自体をスキップせずに実行したい場合

flatMap()メソッド

  • 値の変換によってネストしたOptionalオブジェクトを解消したい場合
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0