Asynchronous rxjava合并不同类型的观察对象

Asynchronous rxjava合并不同类型的观察对象,asynchronous,observable,rx-java,rx-android,Asynchronous,Observable,Rx Java,Rx Android,我是rxjava新手。我需要组合两个发射不同类型物体的可见光。类似于Observable和Observable的东西,然后得到一个Observable。我找不到这样的接线员。做这种事情的方法是什么?请注意,牛奶和谷物是不同步的。如果不确切知道您需要什么,很难说,但可能不知道 zip将同时使用Observable和Observable并通过提供的功能将它们组合成CerealsWithMilk。每次你得到牛奶和谷物时,这会释放出一种新的谷物和牛奶 combinelatetest与zip类似,不同之处

我是rxjava新手。我需要组合两个发射不同类型物体的可见光。类似于
Observable
Observable
的东西,然后得到一个
Observable
。我找不到这样的接线员。做这种事情的方法是什么?请注意,
牛奶
谷物
是不同步的。

如果不确切知道您需要什么,很难说,但可能不知道

zip
将同时使用
Observable
Observable
并通过提供的功能将它们组合成
CerealsWithMilk
。每次你得到牛奶
谷物
时,这会释放出一种新的
谷物和牛奶


combinelatetest
zip
类似,不同之处在于它会发出一种新的
谷物和牛奶
,即使刚刚发出一种新的
牛奶
,或者
刚刚发出一种新的
谷物

如果要合并不同类型的观测值,需要使用:


注意-(只要每个源观测值至少发射了一项)。当使用
zip
运算符时,问题是观测结果正在等待对方。事实上,我想使用一旦完成观察。“CombineTest”运算符能否满足我的需要?
Observable<String> o1 = Observable.just("a", "b", "c");
Observable<Integer> o2 = Observable.just(1, 2, 3);
Observable<String> result = Observable.zip(o1, o2, (a, b) -> a + b);
    Observable<String> o1 = Observable.just("a", "b", "c");
    Observable<Integer> o2 = Observable.just(1, 2, 3);
    Observable<String> result = Observable.zip(o1, o2, (a, b) -> myFunc(a, b));
    //...

    private String myFunc(String a, Integer b) {
            //your code here
            return someString;
        }