例如,如果我想写
1 -> 2 match {
case 1 -> 2 => "matched"
case _ => "not matched"
}
// error: not found: value ->
而不是稍微不那么明显
1 -> 2 match {
case (1, 2) => "matched"
case _ => "not matched"
}
最佳答案
我有这样的事情!我喜欢它,因为我发现它在许多情况下更具可读性。
object -> {
def unapply[A, B](pair: (A, B)): Option[(A, B)] =
Some(pair)
}
现在您可以执行以下操作:
scala> val a -> b = 1 -> 2
a: Int = 1
b: Int = 2
关于scala - 有没有办法让ArrowAssoc在模式匹配中工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9725825/