Kotlin ?.let 、!! 、?:等运算符的使用

作者:燕歆波
导读:使用Kotlin开发,人性化提示 ?.let等语法处理


1、?.let

a?.let{it} 的意思:

当a为null时,什么都不执行
当a不为null时,执行大括号里的语句,意味着it肯定不为null
上面的语法可以理解为:
if(a == null){
	println("什么都不执行")
}
else{
	println("执行")
}

2、!!

!!使用
在使用这句代码的时候如果不在outFilePath后加上!!,kotlin会在使用mSrcFilePath的地方提示风险,会建议你使用?.let{}对mSrcFilePath进行处理,那么,!!到底什么意思呢?

a!!
如果这里a!=null,则执行a
如果a==null ,则抛出空指针异常

3、?:

a ?: b
当a!=null时  执行a;
当a==null时,执行b;

Kotlin ?.let 、!! 、?:等运算符的使用_第1张图片

需要注意的一点: 当声明message的时候,String类型之所以加了个?号,是因为不确定是否为null,所以才会使用此运算符,当然,即使确定不为null,也可以使用,只是语法会提示没必要

4、as?

a as?  b
如果a 是 b,则 a as b
如果 a 不是 b ,则 null

5、?.

a?.b()
如果a != null,则a.b();
如果a == null ,则 结果为null

你可能感兴趣的:(android,kotlin)