RxJava Kotlin如何从单个可观察<String>中获得分离的对象
RxJava Kotlin平面图不会从分割的字符串中返回分离的对象。 相反,它返回列表
val source: Observable<String> = Observable.just("521934/2342/FOXTROT") .flatMap{Observable.fromArray(it.split("/"))} .subscribe{Log.d(TAG, "$it")}
它返回列表:
[521934, 2342, FOXTROT]
但书( Thomas Nield:学习RxJava / 2017 /页114 )说,它必须返回分离的字符串
521934 2342 FOXTROT
书中的例子
http://reactivex.io/documentation/operators/flatmap.html表示它返回Single对象。 在我的情况下,我得到单列表对象。 所以,文件说的是真的。 但是我想要得到结果如书中的例子!
我如何拆分列表并获得分离的对象?
利用flatMapIterable
,所以你可以从列表中获得一系列的项目:
Observable.just("521934/2342/FOXTROT") .flatMap { input -> Observable.fromArray(input.split("/")) } .flatMapIterable { items -> items } .subscribe { item -> Log.d(TAG, item) }