Scala 如果在地图上有其他的东西

Scala 如果在地图上有其他的东西,scala,functional-programming,Scala,Functional Programming,以下If-then-else的更简洁表示方式是什么: val result = scores.map(score => if (score == 0) ("retake", 1) else if (score < 0) ("fail", 1) else ("pass", 1) ) val result=scores.map(scores=> 如果(分数=0) (“重拍”,1) 否则如果(分数(“重拍”,1) 案例s如果s(“失败”,1) 案例=>

以下If-then-else的更简洁表示方式是什么:

val result = scores.map(score =>
  if (score == 0)
    ("retake", 1)
  else if (score < 0)
    ("fail", 1)
  else
    ("pass", 1)
)
val result=scores.map(scores=>
如果(分数=0)
(“重拍”,1)
否则如果(分数<0)
(“失败”,1)
其他的
(“通过”,1)
)

使用模式匹配:

val result = scores.map { 
  case 0 => ("retake", 1)
  case s if s < 0 => ("fail", 1)
  case _ => ("pass", 1)
}
val result=scores.map{
案例0=>(“重拍”,1)
案例s如果s<0=>(“失败”,1)
案例=>(“通过”,1)
}

与防护装置的模式匹配

scores map {
  case 0 => "retake" -> 1
  case x if x < 0 => "fail" -> 1
  case _ => "pass" -> 1
}
分数地图{
案例0=>“重拍”->1
案例x如果x<0=>“失败”->1
大小写u=>通过“->1
}

同时将
1
移动到控制结构之外,这在所有方面都是一样的cases@AlvaroCarrasco,你能给我一些示例代码吗?
(如果(分数==0)“重做”如果(分数<0)“失败”或“通过”)->1