Kotlin 2.3.20 已发布,来看看!
- 内容介绍
- 文章标签
- 相关推荐
各位佬友吼哇,这次轮到 Kotlin 2.3.20 登场啦!
本次更新内容可以在 JetBrains 官方的 What’s new in Kotlin 2.3.20 查阅,
我照例挑自己比较感兴趣的一些改动聊聊。
注意!这次依旧是「我个人」的更新摘要,覆盖不了全部改动;如果你对某个方向特别感兴趣,记得继续深入官方文档喔。
文中示例如无特殊说明均来自或改写自官方日志。
其实 2.3.20 已经发布两三周了来着,但是最近工作忙到起飞忘了来发帖了(
语言特性
按名称解构(Name-based destructuring)
这次语言层面的更新不算特别多,不过一上来这个 按名称解构 我就还挺喜欢的。
以前的解构是纯粹按位置来的,也就是说,只要顺序写错,变量名写得再漂亮也没用:
data class User(val username: String, val email: String)
fun main() {
val user = User("alice", "alice@example.com")
val (email, username) = user
println(email)
// alice
println(username)
// alice@example.com
}
看起来是拿到了 email 和 username,但实际到手上完全是反的。
现在,Kotlin 2.3.20 带来了实验性的按名称解构。
各位佬友吼哇,这次轮到 Kotlin 2.3.20 登场啦!
本次更新内容可以在 JetBrains 官方的 What’s new in Kotlin 2.3.20 查阅,
我照例挑自己比较感兴趣的一些改动聊聊。
注意!这次依旧是「我个人」的更新摘要,覆盖不了全部改动;如果你对某个方向特别感兴趣,记得继续深入官方文档喔。
文中示例如无特殊说明均来自或改写自官方日志。
其实 2.3.20 已经发布两三周了来着,但是最近工作忙到起飞忘了来发帖了(
语言特性
按名称解构(Name-based destructuring)
这次语言层面的更新不算特别多,不过一上来这个 按名称解构 我就还挺喜欢的。
以前的解构是纯粹按位置来的,也就是说,只要顺序写错,变量名写得再漂亮也没用:
data class User(val username: String, val email: String)
fun main() {
val user = User("alice", "alice@example.com")
val (email, username) = user
println(email)
// alice
println(username)
// alice@example.com
}
看起来是拿到了 email 和 username,但实际到手上完全是反的。
现在,Kotlin 2.3.20 带来了实验性的按名称解构。

