Scala 模式匹配方程大小写

pok*_*ars -1 jvm functional-programming scala switch-statement

如果可以x被 整除y,我想模式匹配,返回 true 但我似乎语法错误并且它一直崩溃。

def isDivisible (x: Int, y: Int) :Boolean = Int match {
    case (x % y == 0) => true
    case _ => false
}

isDivisible(10, 5)
Run Code Online (Sandbox Code Playgroud)

将方程作为个案的正确方法是什么

And*_*cus 6

在这样一个简单的例子中使用模式匹配有点矫枉过正,只需定义:

def isDivisible(x: Int, y: Int): Boolean = x % y == 0
Run Code Online (Sandbox Code Playgroud)

  • 如果你真的想要模式匹配 `(x,y) match { case (a,b) if a % b == 0 => `。但这只是愚蠢的。并注意重命名的变量,以避免隐藏从方法参数中“提取”的值。愚蠢的。 (6认同)