Kotlin的一些體會

寫kotlin一段時間了,下面做一下和java區別的總結
0.習慣
不用加分號
三目判斷被if取代了
switch被when替代了
與或不能用符號,要好好的寫 and,or
沒有靜態變量了,用
public類聲明改成open了
類中不能有字段

1.基礎類型
聲明:
var valueName
var valueName : Int ?= null
var valueName = 1
要點:
全局變量必須初始化
修飾符internal是根據提示似乎可以被當作private使用
inner不能用於修飾全局變量,可以用來修飾內部類
lateinit 延遲初始化
val和var是有區別的,區別在於val聲明的變量只默認實現了getter

2.複雜類型
List
var lists : List = Arrays.asList(“聯繫”,”郵箱”,”地址”)

3.邏輯
when資料查詢
e.g.
when (x) {//替代switch case的典型用法
1 -> print(“x == 1”)
2 -> print(“x == 2”)
else -> { // Note the block
print(“x is neither 1 nor 2”)
}
}
不太尋常的用法有點超乎想象
比如
case的條件爲
in 1..10 -> { do some thing}
!in 10..20 -> { do some thing}
in arrays -> { do some thing}
is String -> { do some thing}//判斷符合某類型
x.isOdd() -> { do some thing}// 私以爲是某函數返回值爲true

4.擴展方法
裝飾者模式的建議替代,相當好用
比如你有一個類 SettingData,定義的時候沒想好作什麼,所以只定義了一個變量 setName
此時你在某個類中覺得可以用這個類但是要加個返回函數,怎麼辦呢?
fun SettingData.getName(){
print(“setName $setName”)
}
so easy~~

5.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章