我希望在yield之后立即应用模式匹配来生成Option[Int],如下所示:
object Main extends App {
val i: Int = for (
int1 <- i1();
int2 <- i2()
) yield (int2) match {
case Some(i) => i
case None => 0
}
def i1(): Option[Int] = None
def i2(): Option[Int] = None
}不幸的是,它不能编译。有没有办法避免“临时”的Option[Int]结果声明?
发布于 2018-06-09 23:02:24
加个括号怎么样?
val i: Int = (for {
int1 <- i1()
int2 <- i2()
} yield (int2)) match {
case Some(i) => i
case None => 0
}编辑:添加大括号
https://stackoverflow.com/questions/50775537
复制相似问题