kotlin復(fù)合符號
-
?.
foo?.barif(foo!=null) { return foo.bar }else { return null } -
? 可空類型與非空類型
Kotlin 的類型系統(tǒng)旨在消除來自代碼空引用的危險foo? var foo?="abc" foo=null 編譯成功 foo可為空 var foo="abc" foo=null 編譯失敗 foo不可以為空 -
?:
foo?:barif(foo!=null) { foo } else { bar } foo?.length?:-1 -
!! 非空斷言運(yùn)算符
foo!!if(foo!=null) { foo }else { return NullPointerException } -
as?
為了避免泡醋一場,可以使用安全轉(zhuǎn)換操作符as?,它可以在失敗時返回nullfoo as? type if(foo is Stype) { foo as Type }else { null } -
as
- 強(qiáng)制類型轉(zhuǎn)換
val x: String = y as String 通常,如果轉(zhuǎn)換是不可能的,轉(zhuǎn)換操作符會拋出一個異常。因此我們成指為不安全的。 val x: String? = y as String? 為了避免拋出異常,可以使用安全轉(zhuǎn)換操作符 as?,它可以在失敗時返回 null: val x: String? = y as? String - 導(dǎo)入別名
import foo.Bar // Bar 可訪問 import bar.Bar as bBar // bBar 代表“bar.Bar” ``` - 強(qiáng)制類型轉(zhuǎn)換
$在字符串模版中引用變量或者表達(dá)式
: 分割聲明重的名稱與類型
..創(chuàng)建一個區(qū)間
:: 創(chuàng)建一個成員飲用或者一個類引用