gpt4 book ai didi

kotlin - 为什么不能在 when 表达式中使用解构声明?

转载 作者:行者123 更新时间:2023-12-03 21:31:29 25 4
gpt4 key购买 nike

可能这个问题应该由 Kotlin 的作者提出,但我确信在 SO 上有许多 Kotlin 用户对其架构有深入的了解。

所以我的问题是:为什么该语言不支持 destructuringwhen表达?

例如,我想要以下代码:

data class Person(val name: String, val age: Int)

when (person) {
("John", _) -> print("It is John") //it won't compile
else -> print("It's not John")
}

由于解构使用 component1, component2, etc.方法 我很好奇为什么不能如上所示使用这种简单的值比较。是不是修改 when的问题机制还是破坏本身?

最佳答案

有一个开放的功能票:

KT-20004 : when 语句中的类 Scala 构造函数模式匹配

此外,Java 将支持数据类和 pattern matching在不久的将来,这可能会对 Kotlin 版本的实现产生影响。

关于kotlin - 为什么不能在 when 表达式中使用解构声明?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48325764/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com