【发布时间】:2018-08-30 23:34:21
【问题描述】:
kotlin 1.2.60
rxJava 2
我在下面有以下代码sn-p。我想知道使用链接到平面图末尾的订阅并打印结果或创建观察者并订阅 Observable 有什么区别。
出于某种原因,我希望得到相同的结果。但是当我在 onNext 中打印出结果时,它会显示完整的发射项目。
但是,对于链接订阅,它显示了我的期望。
fun main(args: Array<String>) {
val source2 = Observable.just("521934/2342/FOXTROT", "21962/12112/78886/TANGO", "283242/4542/WHISKEY/2348562")
source2.flatMap {
Observable.fromArray(*it.split("/").toTypedArray())
}
.subscribe { println(it) }
val observer = object : Observer<String> {
override fun onComplete() {
}
override fun onSubscribe(d: Disposable) {
}
override fun onNext(t: String) {
println(t)
}
override fun onError(e: Throwable) {
}
}
source2.subscribe(observer)
}
输出如下: 来自链式订阅:
521934
2342
FOXTROT
21962
12112
78886
TANGO
283242
4542
WHISKEY
2348562
从 onNext:
521934/2342/FOXTROT
21962/12112/78886/TANGO
283242/4542/WHISKEY/2348562
【问题讨论】: