Kotlin 使用通配符对多个值进行模式匹配
在Kotlin中,当对给定值进行模式匹配时,我们可以使用Kotlin 使用通配符对多个值进行模式匹配,kotlin,Kotlin,在Kotlin中,当对给定值进行模式匹配时,我们可以使用,例如 when(value) { 1 -> "One" 2, 3 -> "Two or three" else -> "The rest" } 通过将两个值嵌套在对中,我们还可以同时对多个值进行模式匹配 when(Pair(value1, value2)) { (1, "One") -> "One" (2, "Two"), (3, "Three") -> "Two o
,例如
when(value) {
1 -> "One"
2, 3 -> "Two or three"
else -> "The rest"
}
通过将两个值嵌套在对中,我们还可以同时对多个值进行模式匹配
when(Pair(value1, value2)) {
(1, "One") -> "One"
(2, "Two"), (3, "Three") -> "Two or three"
else -> "The rest"
}
现在,我想知道如何使用通配符同时对多个值进行模式匹配。
我尝试了以下两种方法,但都没有成功:
when(Pair(value1, value2)) {
(1, _), (_, "One") -> "One"
(2, _), (_, "Two"), (3, _), (_, "Three") -> "Two or three"
else -> "The rest"
}
及
如何匹配其中一个变量的任何大小写?Kotlin没有其他语言可能提供的模式匹配功能。有关此功能的讨论,请参见此处:
当
出现时,不支持您的用例
when(Pair(value1, value2)) {
(1, else), (else, "One") -> "One"
(2, else), (else, "Two"), (3, else), (else, "Three") -> "Two or three"
else -> "The rest"
}