作者:陈旺财九_999 | 来源:互联网 | 2023-10-09 19:59
空安全Kotlin系统有一项重要的特点,就是致力于想灭空引用。避免出现NPE(NullPointerException)异常。在Kotlin中定义一个允许为空的变量
空安全
Kotlin
系统有一项重要的特点,就是致力于想灭空引用。避免出现NPE
(NullPointerException)异常。
在Kotlin中定义一个允许为空的变量定义和不允许为空的定义方式是不一样的。
var a: String ="abc"var b: String? = "abc"
b.length
空值检查
val l = if (b != null) b.length() else -1
安全调用
b?.length()
如果b
为空,返回,不调用length()
Elvis 操作符
?:
val l = b.length()?: -1
如果b为空,则l=-1
。
检查函数参数一般这么写:
fun foo(node: Node): String? {val parent = node.getParent() ?: return nullval name = node.getName() ?: throw IllegalArgumentException("name expected")//...
}
!!操作符
val b: String? = null
val l = b!!.length
安全转换
val aInt: Int? = a as? Int