Kotlin 2.1 发布:语言主要新特性与改进概览

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

Kotlin 2.1 发布:编程语言有哪些变化



JetBrains 正式宣布推出 Kotlin 2.1 稳定版。这是继 2024 年 5 月发布的 2.0 版本之后的第一个重大版本。新版本带来了许多改进,涉及基础语法和多平台开发基础设施。我们来分析最重要的新特性。



语言的关键变化



开发人员专注于提高稳定性和扩展语言功能。主要新特性:



  • 稳定的 non-local break 和 continue 模式。此前用于内联 lambda 的实验性功能现已最终确定。现在,您可以从 lambda 表达式内部(例如在 forEach 中)中断外部循环,而无需额外的包装器。这简化了编写简洁代码的过程。
  • 受歧视联合的子类型(实验性)。引入了对密封类和接口的子类型支持。现在,您可以声明密封接口并在类中继承它们,同时保持对 when 表达式的严格检查。
  • 改进了对 Java 21 的支持。Kotlin 编译器现在可以正确处理新的 Java 结构,例如 record patterns 和带有模式的 switch。这对于迁移到最新 Java 版本的项目尤其重要。


Kotlin Multiplatform 的更新



Kotlin 2.1 继续发展多平台生态系统:



  • 稳定的 Kotlin/Wasm。对 WebAssembly 的支持现已最终确定。现在,您可以将代码编译为 Wasm,在浏览器中或通过 Wasmtime 在服务器上运行它。
  • 加速 Kotlin/Native 的编译。优化了与 LLVM 的协作。据 JetBrains 估计,原生项目的构建时间缩短了 15-20%。
  • Android 的新工件。添加了对 Android Gradle Plugin 8.7 的支持,并改进了与 Jetpack Compose 库的兼容性。


标准库的变化



stdlib 中出现了几个有用的函数:



  • buildMap 和 buildSet 函数。现在,您可以使用构建器创建不可变集合,类似于 buildList。这使得代码更安全、更具表现力。
  • 用于处理日期的新方法。添加了 LocalDate.daysUntil 和 LocalDate.monthsUntil。它们简化了无需第三方库即可计算日期差异的过程。
  • 改进了对可空类型的处理。?.let 函数现在可以正确处理嵌套调用,而无需创建临时变量。


性能与面向开发者的改进



JetBrains 也关注了开发者工具:



  • IntelliJ IDEA 中的智能自动补全。Kotlin 插件已更新至 2.1 版本。现在,IDE 会根据上下文提供更相关的自动补全选项。
  • 优化 K2 编译器的工作。加速了代码分析和错误输出。在包含数千个文件的大型项目中尤其明显。
  • 新的性能检查器。内置分析器会提示,

推荐库