组合2个可观察对象并从第一个完成输出获得输出
答
由于您想让第一个数据完成,您必须将数据放到某个位置,直到您将终端事件收集到自己的列表中并使用amb
来挑选发出事件信号的来源(收集的清单)。然后,您可以将列表展开回单个项目。
Observable<A> source1 = ...
Observable<A> source2 = ...
Observable.amb(source1.toList(), source2.toList())
.flatMapIterable(list -> list)
.subscribe(...);