Google IO/19 - Kotlin 1.3,更多新特性

工程師小孫發表於2019-05-13

轉載請註明出處

2年前google就確定在kotlin作為android系統的官方語言,Kotlin first。

在剛過去的google IO 2019會議上,又提出了新的kotlin特性,youtube連線如下: www.youtube.com/watch?v=8rY…

主要內容如下:

將 when 主語捕獲到變數中

原來的kotlin when使用如下:

在這裡插入圖片描述
現在可直接使用:
在這裡插入圖片描述
注意必須是用val,如果使用var將會發生如下情況:

在這裡插入圖片描述

Experimental 註解

在這裡插入圖片描述
使用該@Experimental會定義一個註解類,標誌該類是實驗性的,因此會報錯,但是可以更改如下
在這裡插入圖片描述
這時就不會發生報錯,使用場景可在於多人協作,對於一些不成熟,不穩定的API上的處理。

智慧轉換

在這裡插入圖片描述
然而,一旦將這些檢測提取到單獨的函式中,所有智慧轉換都立即消失了:
在這裡插入圖片描述
為了改善在此類場景中的行為,Kotlin 1.3 引入了稱為 契約 的實驗性機制。
在這裡插入圖片描述
關鍵詞contract,視訊中說法如下:create contracts and say that your function matches your the argument to a function match certain conditions and that basically is guaranteeing you a certain level of code correctness in your actual code

總體就是用contract來保證在實際的程式碼執行中,引數是匹配你的conditions的。

Json

在這裡插入圖片描述

無參的main

無符號整型型別

在這裡插入圖片描述

ifEmpty()和ifBlank()

在這裡插入圖片描述
以上是使用場景比較多的一些特性,更多請參看Google IO/19 相關視訊以及官方文件。

相關文章