我有一个集合Option[T]
,现在我想从中提取值。但我也希望新集合排除None
s。
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
有没有更简单的方法来实现这种行为?