kotlin,null let expression

kotlin,null let  expression

class Num {
    var data: Int? = -1
}

fun main(args: Array) {
    val n = Num()
    n.data = null

    var b = true

    b = n.data?.let { it > 0 } ?: false
    println(b)

    n.data = 1
    b = n.data?.let { it > 0 } ?: false
    println(b)
}

 

false
true

 

 

kotlin常用表达式let,?:,as?,?.,!!_zhangphil的博客-CSDN博客it.todo() //函数内使用it替代object对象访问属性和方法。it.todo() //object不为null,才会执行let函数。当a不为null时,执行大括号里的语句(it肯定不为null)如果a == null ,则为 null。= null,则a.b()如果 a 不是 b,则为 null。如果a 是 b,则 a as b。当a为null时,什么都不执行。如果a==null,抛出空指针。=null时,执行a。当a==null时,执行b。https://blog.csdn.net/zhangphil/article/details/129264159

kotlin的let,with,run,apply,also,异同区别_zhangphil的博客-CSDN博客it.todo() //object不为null,才会执行let函数。当a不为null时,执行大括号里的语句(it肯定不为null)如果a == null ,则为 null。= null,则a.b()如果 a 不是 b,则为 null。如果a 是 b,则 a as b。当a为null时,什么都不执行。如果a==null,抛出空指针。=null时,执行a。当a==null时,执行b。kotlin常用表达式let,?zhang 19 工作 996,赚59760。zhang 20 工作 996,赚59760。https://blog.csdn.net/zhangphil/article/details/129327285

 

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