30

を変換する Scala API メソッドはありSeq[Option[T]] -> Seq[T]ますか?

これは、次の方法で手動で行うことができます。

seq.filter(_.isDefined).map(_.get)

一般的なAPIで上記を行うメソッドがあるかどうか疑問に思っています。

4

1 に答える 1

51

絶対に、そうではありません。(いいえ!)

scala> val so1 = List(Some(1), None, Some(2), None, Some(3))
so1: List[Option[Int]] = List(Some(1), None, Some(2), None, Some(3))

scala> so1.flatten
res0: List[Int] = List(1, 2, 3)
于 2010-08-26T05:02:51.070 に答える