kotlin-null-safety相关内容

在 Kotlin 中进行空检查的最佳方法?

我应该使用双重 = 还是三重 =? if(a === null) {//做一点事} 或 if(a == null) {//做一点事} 类似于“不等于": if(a !== null) {//做一点事} 或 if(a != null) {//做一点事} 解决方案 两种方法生成相同的字节码,因此您可以选择任何您喜欢的方式. ..
发布时间:2021-12-10 17:40:59 其他开发

什么是 Kotlin double-bang (!!) 运算符?

我正在使用 Android Studio 将 Java 转换为 Kotlin.在实例变量之后我得到了双重打击.什么是双爆炸,更重要的是,这在哪里记录? mMap!!.addMarker(MarkerOptions().position(london).title("Marker in London")) 解决方案 这是不安全的可空类型 (T?) 转换为不可空类型 (T),如果值为 null, ..
发布时间:2021-12-10 16:50:34 其他开发

Kotlin中的'a?.let {}?:run {}`是惯用语言吗?

我在S.O中看到以下评论.帖子,我很感兴趣: 为什么不使用null进行检查? a?.let{} ?: run{}仅在极少数情况下适用,否则不是惯用语言– voddan 16年5月15日在7:29 为什么该构造“仅在少数情况下适用"? Kotlin的首席工程师说, run允许您在Elvis运算符的右侧使用多个语句 https://stackoverflow.com/a/5124198 ..
发布时间:2020-04-26 12:16:07 其他开发

为什么不安全的.run()调用可以在Kotlin的null值上正常工作?

我有以下代码片段: val foo: String? = null foo.run { println("foo") } 我这里有一个可为空的变量foo,该变量实际上被设置为null,随后是一个不安全的.run()调用. 运行代码段时,尽管在null上调用了run方法,但仍打印出了foo.这是为什么?为什么没有NullPointerException?为什么编译器允许对可选值进行非 ..
发布时间:2020-04-26 12:03:20 其他开发

什么是Kotlin双爆炸(!!)运算符?

我正在使用Android Studio将Java转换为Kotlin.在实例变量之后,我得到了双响.什么是双重爆炸?更重要的是,这在哪里记录? mMap!!.addMarker(MarkerOptions().position(london).title("Marker in London")) 解决方案 这是将不安全的可空类型(T?)转换为不可空类型(T)的方法, 如果值为null,则 ..
发布时间:2020-04-26 11:43:29 其他开发