gpt4 book ai didi

java - RxJava - Observable 的 zip 列表

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:54:39 25 4
gpt4 key购买 nike

我有一个 Observable 列表(RxJava 1)。

List<Observable> observableList = new ArrayList<>();

它至少可以包含 1 个 Observable。每个都有相同类型的结果。

如何压缩所有 Observable 的结果?

我考虑过 zip-operator 但它不支持 List 并且我不知道可观察量的数量(它可以是 1,2,3,4....)

最佳答案

您可以使用静态 zip(java.lang.Iterable<? extends Observable<?>> ws,FuncN<? extends R> zipFunction) method .

这是一个zip采用 Iterable 的方法的 Observable s 和一个 FuncN (它的 call 方法采用 varargs 参数)并使用它来组合相应发出的 Object s 被新返回的结果省略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;
}
});

关于java - RxJava - Observable 的 zip 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43524709/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com