kotlin避免判空语句

原创
2018/11/21 15:31
阅读数 5.3K

怎么用 ?.、?:和run 替换 if(x!=null)…else…_

说到空判断那就是?.?:和下面这些代码被inline的函数

操作符 参数 返回
let it T->R 用户指定返回
also it 原数据
apply this 原数据
run this T->R 用户指定返回
takeIf predicate predicate==true 返回原数据,否则返回null
takeUnless predicate predicate==false 返回原数据,否则返回null

但是还会经常看到诸如

if(x!=null){
    ....
}else{
    ....
}

对于有点洁癖的人来说总是有个疙瘩的,这特么想java嘛。 用?.?:run来改写那就是这样的

x?.run {
    //run x!=null block
} ?: run {
    //run x=null block
}

现在没有if-else判断非空了.^_^

展开阅读全文
打赏
0
0 收藏
分享
加载中
大哥!你可救了我的命了,现在以Kotlin空值判断为关键词搜索,全都是特么空值判断赋值语句或者三元表达式,真服了,我要的就是判空语句😆谢谢大哥
2019/05/30 11:52
回复
举报
更多评论
打赏
1 评论
0 收藏
0
分享
返回顶部
顶部