のコレクションがありOption[T]
、そこから値を抽出したいと考えています。しかし、新しいコレクションで s を除外することも必要ですNone
。
val foo = List(None, None, Some(1), None, Some(2))
最初に頭に浮かんだアイデアは ですがmap
、少し直感的ではありません。
foo.map(o => o.get) // Exception!
foo.map(o => o.getOrElse(null)).filterNot(_ == null) // List(1, 2), works but not elegant
この動作を実現する簡単な方法はありますか?