【发布时间】:2019-07-21 12:25:15
【问题描述】:
我已经定义了:
final case class EventOpt(start: Option[Long], end: Option[Long])
final case class Event(start: Long, end: Long)
对我来说唯一有趣的对象是那些同时设置了两个字段的对象,我想过滤其余的对象
拥有List[EventOpt] 我想在start 和end 都设置时使用Some(Event) 将它转换为List[Option[Event]],而None 当start 和end 中的任何一个是@ 987654330@?
例如。
List(EventOpt(Some(1), None), EventOpt(None, Some(2)), EventOpt(Some(3), Some(4)))
=>
List(None, None, Some(Event(4, 3)))
通过这样做,将允许在最后一个列表上做一个简单的flatMap 并省略Nones
【问题讨论】:
标签: scala functional-programming scala-collections