首页 > 解决方案 > kotlin 避免在 `let` 中深度嵌套 `let`

问题描述

有没有办法避免下一个构造?一种在不向代码添加意图的情况下检查 null 的方法?我的意思是喜欢if (variableOne == null) return但又酷又酷的 koltin 风格?

variableOne?.let{
    // ....

    variableTwo?.let {
        // ...

        variableThree?.let {
            // ...

        }
    }
}

标签: kotlincoding-style

解决方案


使用局部变量和智能转换。

val lVariable1 = variable1
val lVariable2 = variable2
val lVariable3 = variable3
if (lVariable1 != null &&
        lVariable2 != null &&
        lVariable3 != null) {
    // Use local variables here
}

推荐阅读