在以下代码中:
val x = 5
val y = 4 match {
case x => true
case _ => false
}
变量y
的值为true。Scala将x
解释为模式匹配中的自由变量,而不是将其绑定到作用域中同名的变量。
如何解决这个问题?