我想知道是否有人可以向我解释在带有 livedata 的 lambda 表达式中让这个词。只是打印lamda表达式吗?我猜有些人用它来不再获得空指针异常?
wordViewModel.allWords.observe(this, Observer { value ->
value?.let { /*DO SOMETHING WITH VALUE ('IT')*/ }
})
let()
是 Kotlin 的“作用域函数”。特别是,let()
与安全调用 ( ?.
)一起使用时,仅let()
当接收者 ( value
) 不是时才执行提供给的 lambda null
。
由于Observer
接口的定义方式,value
可以是null
. 因此,value -> value?.let { //DO OTHER THINKS WITH 'IT' }
基本上说“忽略null
,但对所有非null
值执行此 lambda ”。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句