誰でも私にmap
とflatMap
のプロパティの使用例を教えてもらえますか?スカラ - マップとフラットマップの相違
Option
ケースでは、これらの2つの方法がそれぞれの署名がdef map(A => B): Option[B]
とdef flatMap(A => Option[B]): Option[B]
であることがわかります。私はこの方法書くとき
scala> val a = Some(1).map(_ + 2)
a: Option[Int] = Some(3)
scala> val a2 = Some(1).flatMap(n => Some(n + 2))
a2: Option[Int] = Some(3)
:
だから、私は二つの方法でいくつかの値を取得することができます、
def plusTwo(n: Int): Int = n + 2
Some(1).map(plusTwo)
と
def plusTwo(n: Int): Option[Int] = Some(n + 2)
Some(1).flatMap(plusTwo)
の間に違いがありますflatMap
はfor-comprehensionに変換することができ、それはほとんどすべてのメソッドr eturn値Option
ラップ?