我们可以检查when(x)中的“AND”条件吗

Thu*_*gon 3 android kotlin

Kotlin 参考文献中,它被写为可以在when控制流内使用逗号 (,) 来匹配多个条件。例如-

when (x) {
    0, 1 -> print("x == 0 or x == 1")
    else -> print("otherwise")
}
Run Code Online (Sandbox Code Playgroud)

在这里,在第一个条件下,逗号的作用类似于 OR 运算符。有没有办法编写一个表达式来匹配里面的 AND 条件when

mie*_*sol 5

是的。虽然语法有些不同:

when {
    x % 5 == 0 && x % 3 == 0 -> println("foobar")
    x % 5 == 0 -> println("bar")
    x % 3 == 0 -> println("foo")
}
Run Code Online (Sandbox Code Playgroud)