kotlin避免判空语句

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

怎么用 ?.、?:和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 收藏
分享
打赏
1 评论
0 收藏
0
分享
返回顶部
顶部