今天延續昨天繼續討論Null安全性
如下我們可以確認b是否為Null
val l = if (b != null) b.length else -1
也可以有比較複雜的如下形式
但要注意這只有當b為不可變的時候才成立,也就是當局部變數在檢查或作為成員使用後不被變更
val b: String? = "Kotlin"
if (b != null && b.length > 0) {
print("String of length ${b.length}")
} else {
print("Empty string")
}
安全運算子(safe call operator)
如下這個範例當b不等於null時,回傳b.length,除此之外則都是回傳null
這個表示式的型別為Int?
val a = "Kotlin"
val b: String? = null
println(b?.length)
println(a?.length)