title | date | author | tags | keywords | categories | reward | reward_title | reward_wechat | reward_alipay | source_url |
---|---|---|---|---|---|---|---|---|---|---|
[译]Kotlin 1.1-M03 is here! |
2016-11-24 04:50:00 -0800 |
Ilya Chernikov |
官方动态 |
false |
Have a nice Kotlin! |
我们很高兴地宣布即将到来的Kotlin1.1的第三个里程碑。此版本带来了新的语言功能,以及JavaScript后端,编译器和IDEA插件中的改进和修复。新版本还包括Kotlin 1.0.5中引入的所有工具功能,并与IntelliJ IDEA 2016.3 EAP和Android Studio 2.2和2.3兼容。 与其他里程碑版本一样,我们为新语言和库功能提供无后向兼容性保证</ b>。在1.1版本的里程碑版本中引入的任何内容都将在最终1.1版本之前更改</ b>。 请分享您关于新功能或您可能遇到的任何问题的反馈,通过此版本 YouTrack , 论坛 和 松弛 。 1.1-M03的完整更新日期可用 这里 。
{% raw %}
{% endraw %}
现在可以使用下划线而不是lambda的未使用参数的名称:
{% raw %}
{% endraw %}foo { _, x -> ... }
{% raw %}
{% endraw %}解构声明中的一个未使用的变量名称现在也可以用下划线替代。
{% raw %}
{% endraw %}val (x, _, z) = expr
{% raw %}
{% endraw %}这两种情况在适当的情况下进行了详细描述 保持 。
根据Java 8规范,Kotlin现在支持在数字之间使用单个下划线符号的数字文字。例如:
{% raw %}
{% endraw %}val ONE_MILLION = 1_000_000
{% raw %}
{% endraw %}见 保持 更多的细节和例子。
的支持 提案 以两种内在功能的形式登陆标准图书馆:
{% raw %}
{% endraw %}inline fun <reified T : Enum<T>> enumValues(): Array<T>
inline fun <reified T : Enum<T>> enumValueOf(name: String): T
{% raw %}
{% endraw %}它们允许枚举通用枚举类型的值。例如。
{% raw %}
{% endraw %}enum class RGB { RED, GREEN, BLUE }
print(enumValues<RGB>().joinToString { it.name }) // prints RED, GREEN, BLUE
{% raw %}
{% endraw %}如详细描述的 保持 DSL作者在为构建器类构造表达范围限制方面存在问题。例如,对于一些html-builder DSL:
{% raw %}
{% endraw %}table {
tr {
tr {} // PROBLEM: Table.tr() is valid here
}
}
{% raw %}
{% endraw %}为了解决这个问题,我们添加了 @DslMarker </ code>注释,允许在这些情况下更准确地控制可见性范围。有关使用示例请参阅 使用此功能的kotlinx.html库的预览版本 (看到 HtmlTagMarker 和 HTMLTag 实现和 DSL-标记 预览库使用信息)。
不同平台的标准库统一过程正在向前发展。我们已经开始统一1.1-M2中的异常类型,现在在所有平台上都支持一些更常见的类型,可以在 kotlin。* </ code>包中使用,默认情况下导入。这些包括:
- ArrayList,HashSet,LinkedHashSet,HashMap,LinkedTashMap在kotlin.collections中
- 在kotlin.text中附加和StringBuilder
- 比较器在kotlin.com对比
在JVM上,这些只是来自 java.util </ code>和 java.lang </ code>的旧旧类型的typealiases
JavaScript后端现在支持与JVM后端兼容的以下Kotlin语言功能:
- 协调程序
- lambda参数中的解析
- 解构声明中未使用的变量名
JavaScript后端现在可以生成更多的静态可检查代码,这对JS代码处理工具(比如minifier,optimizers,linters等)来说更为友善。
在Maven / Gradle中:</ b>添加 http://dl.bintray.com/kotlin/kotlin-eap-1.1 作为构建脚本和项目的存储库;使用1.1-M03作为编译器和标准库的版本号。
在IntelliJ IDEA中:</ b>转到工具→Kotlin→配置Kotlin插件更新</ i>,然后在更新频道</ i>下拉列表中选择“早期访问预览1.1”下拉列表,然后按检查更新</ i>。
开车去Kotlin!