尝试用fold
中的find
替换CC_3,没有成功。我做了简单的例子,不要潜入我类型的细节。如何用fold
替换它?
val s: Map[String, Int] = Map("1" -> 1, "2" -> 0, "3" -> 1)
s.find(_._2 == 0) match {
case Some((_, 0)) => "F"
case _ => "T"
}
尽管确实有比您的问题更好的解决方案,但这是您问题的答案:
val s: Map[String, Int] = Map("1" -> 1, "2" -> 0, "3" -> 1)
s.foldLeft("T") {
case (_, (_, 0)) => "F"
case (res, _) => res
}
关键是您必须继续传递默认情况下的结果。