2017-09-27 58 views
-2

RxJava Kotlin平面圖不會從分割字符串中返回分離對象。而是返回列表RxJava Kotlin如何從單個可觀察對象中獲取分離對象<String>

val source: Observable<String> = Observable.just("521934/2342/FOXTROT") 
.flatMap{Observable.fromArray(it.split("/"))} 
.subscribe{Log.d(TAG, "$it")} 

它返回列表:

[521934, 2342, FOXTROT] 

但書(托馬斯·尼爾德:學習RxJava/2017年/頁114)表示,它已經返回分隔字符串

521934 
2342 
FOXTROT 

example from book

http://reactivex.io/documentation/operators/flatmap.html表示它返回Single對象。在我的情況下,我得到了單列表對象。所以,文檔說的是真的。但是我想要像書中的例子那樣得到結果!

我如何分割列表並獲得分離的對象?

回答

0

flatMapIterable製作使用,所以你可以從列表中的項目流:

Observable.just("521934/2342/FOXTROT") 
      .flatMap { input -> Observable.fromArray(input.split("/")) } 
      .flatMapIterable { items -> items } 
      .subscribe { item -> Log.d(TAG, item) } 
相關問題