【发布时间】:2017-06-17 23:37:32
【问题描述】:
我有一个Person 的列表,想通过id 检索一个人
val person = personL.find(_.id.equals(tempId))
之后,我想将列表的第一个和最后一个元素作为一个元组获取,它是Person 的属性。
val marks: Option[(Option[String], Option[String])] = person.map { p =>
val marks = p.school.marks
(marks.headOption.map(_.midtermMark), marks.lastOption.map(_.finalMark))
}
这项工作很好,但现在我想将Option[(Option[String], Option[String])] 转换为简单的(Option[String], Option[String])。是否有可能通过使用以前的地图即时执行此操作?
【问题讨论】:
-
如果 tuple 的选项是 none 应该怎么办?你想要一个默认值吗?