我有一个Observables列表(Rx
Java 1).
List<Observable> observableList = new ArrayList<>();
它可以包含至少1个Observable.每个都有相同类型的结果.
如何压缩所有Observable的结果?
解决方法
您可以使用静态
zip(java.lang.Iterable<? extends Observable<?>> ws,FuncN<? extends R> zipFunction)
method.
它是一个zip方法,它接受一个Iterable of Observables和一个FuncN
(它的调用方法采用varargs参数)并使用它将相应的发射对象组合成结果,以便新返回的Observable省略.
例如,您可以这样做:
Observable.zip(observableList,new FuncN(){ public ReturnType call(java.lang.Object... args){ ReturnType result; //to be made //preparatory code for using the args for (Object obj : args){ ReturnType retObj = (ReturnType)obj; //code to use the arg once at a time to combine N of them into one. } return result; } });