【发布时间】:2014-08-05 12:44:26
【问题描述】:
有时您可能需要针对val 的当前值执行match。最明显的尝试是行不通的,因为val 的名称在match 语句中重新绑定,如下所示:
val s = 5 //> s : Int = 5
val t = 4 //> t : Int = 4
t match {
case s => println(s"matched $s")
case _ => println("outta here!")
} //> matched 4
与s 的当前值匹配最直接的方法是什么?
【问题讨论】:
-
@RobbyCornelissen - 当您单击 按钮时,会出现一个用于回答您自己的问题的复选框。 Apparently SO encourages this,虽然我不确定为什么...
-
... 尤其是当这个问题已经多次出现时。这就是 SO 在您输入时建议现有问题的原因。
-
感谢您将此问题与我从中推断出答案的较早问题联系起来。我希望其他搜索者能够找到这个问题,如果他们正在搜索我使用的相同短语和术语,例如“当前值”,它们没有在 SO 上出现结果。对于和我有相同编程背景的程序员来说,我这里的问答可能更容易找到,也更直接地回答了问题。这是我发布它们时的希望。当我浏览 SO 提出的现有问题时,没有一个明显与我搜索的术语相关。
标签: scala pattern-matching match case