Kotlin之?和!!最简单的理解
一、?
1)、?在声明对象时,把它跟在类名后面,表示这个类允许为null
var list: ArrayList<String>? = null
2)、调用对象时,把它跟在对象后面,表示如果为null程序就会视而不见,比如我们代码如下
list?.size
这里就算是list为null,也不会抛出空指针异常,
3)、对象A?:对象B
var size = list?.size? : 0
如果size不为空就取size的值,如果是空的话就取0,等价三元操作符
int size = list.size != 0? size : 0
二、 !!解释
"!!"加在变量名后,如果对象为null,那么系统一定会报异常!
赞 (0)