Kotlin中是否有一个成语用于将变量设置为null(如果它尚未为空)?比语言更令人愉悦的东西:
var test: String? = null
if(test != null) test = null
答案 0 :(得分:4)
您可以使用execute if not null idiom:
test?.let { test = null }
答案 1 :(得分:3)
只需为本地变量指定null:
test = null
如果它不为null - 则为此变量赋值null。 如果变量为null - 您只需为其赋值null,因此没有任何更改。
答案 2 :(得分:1)
I came up with this extensions which makes this simpler:
inline fun <T, R> T.letThenNull(block: (T) -> R): T? { block(this); return null }
val test: Any? = null
...
test = test?.letThenNull { /* do something with test */ }