【发布时间】:2018-11-27 22:59:35
【问题描述】:
我正在尝试将示例从 this article 从 Java 转换为 Kotlin。 我从示例 5 的图片中得到错误:
我注意到,如果没有 map() 函数,我不会收到此错误
那么,这个错误的意义何在,如何写对呢?
【问题讨论】:
标签: android kotlin rx-java rx-android rx-kotlin
我正在尝试将示例从 this article 从 Java 转换为 Kotlin。 我从示例 5 的图片中得到错误:
我注意到,如果没有 map() 函数,我不会收到此错误
那么,这个错误的意义何在,如何写对呢?
【问题讨论】:
标签: android kotlin rx-java rx-android rx-kotlin
Kotlin 中 lambda 的返回值始终是块中的最后一个表达式。
所以在这种情况下
.map { it.note = it.note.toUpperCase() }
没有返回有意义的值。
你应该这样做
.map {
it.note = it.note.toUpperCase()
it
}
返回一种类型的 Note 而不是 Unit。
【讨论】: