kotlin 空指针检查

1【?】

可空类型,表示当前对象可以为空

 var a: String = "abc";
 a = null // 编译失败
var a: String? = "abc";
a = null // 编译成功

2【?.】

安全调用操作符。调用一个对象的方法,如果对象为空,则不执行方法且不报null异常

var a: String?
a = null
var b = a?.length // a为空,返回null;

3【?:】

elvis操作符,不同与三目运算符,当案例2中a为null时,可用?: 返回一个值。例如

var a: String?
a = null
var b = a?.length ?: -1 // a为空,执行【?:】,返回-1;

4【!!】

当前对象为空,抛空指针异常,与【?】相反

var a: String?
a = null
var b = a!!.length // a为空,编译失败 ;

 

posted @ 2022-08-02 16:26  随易来了  阅读(241)  评论(0编辑  收藏  举报