Option [String]があり、そこにSome(文字列)がある場合、それをIntto toToIntに変換したいとします。私は次のようにします:ScalaのOption [T]をOption [U]に変換する
val foo: Option[String] = Some("5")
val baz: Option[Int] = foo match {
case Some(thing) => Some(thing.toInt)
case None => None
}
これは素晴らしいです。しかし、それは非常に冗長で多くの作業のようです。誰も私にこれを行う簡単な方法を示すことができますか?
ありがとう!
この機能を抽象化することができます:
http://www.scala-lang.org/api/rc/scala/Option.html
はまた、このチートシートを参考にすることができ:ちょうどscaladocを見て、それが呼ばれています'Functor'。ファンクタ型のクラスは、List、Tree、Optionなどのそれぞれのインスタンスで動作します。型クラスに基づくアプローチで使用することは、非常に強力なコンセプトです。 – AndreasScheinert