如何使用RxJava CombineLatest运算符与9个以上可观察对象


问题内容

我正在使用RxJava,我想使用运算符组合12个不同的可观察对象combineLatest

我看到了一个函数原型,该原型带有一个可观察值列表和一个实现,FuncN但是我不确定该怎么做,我在实现该call方法时遇到了麻烦。

有人可以给我举个例子吗?


问题答案:

有一个combineLatest需要List观察的。这是有关如何使用它的示例:

List<Observable<?>> list = Arrays.asList(Observable.just(1), Observable.just("2"));
Observable.combineLatest(list, new FuncN<String>() {
    @Override
    public String call(Object... args) {
        String concat = "";
        for (Object value : args) {
            if (value instanceof Integer) {
                concat += (Integer) value;
            } else if (value instanceof String) {
                concat += (String) value;
            }
        }
        return concat;
    }
});