2014-10-03 5 views
0

Я пытаюсь испустить 2 наблюдаемых с использованием метода .zip(), но я хотел бы избежать необходимости возвращать что-либо из-за использования Func2.Как испускать 2 Наблюдаемые данные и не возвращать ничего

Есть ли что-то подобное?

Я не могу найти какой-либо другой метод, который делает это ...

Спасибо!

EDIT:

Observable<> obs1 = ...; 
Observable<> obs2 = ...; 

Observable.zip(obs1, obs2, new Func2<T1, T2, R>() { 

    R call(T1 t1, T2 t2) { 
     .. 
    } 
    .. 
    return ...; 
}); 

Я хотел бы функцию, как молния, но тот, который не требует от вас ничего возвращать - например действий2 вместо func2.

+0

Что вы имеете в виду _ «испускают 2 Observalbes» _? 2 элемента в результате наблюдаемых или 2 наблюдаемых в результате наблюдаемых? Не могли бы вы показать мраморную диаграмму? – Brice

+0

Посмотрите, пожалуйста, на мой «EDIT». – Shvalb

+0

Я никогда не использовал RxJava, но попробовал ли вы просто передать «Void» в качестве аргумента третьего типа и просто вернуть «null»? – misberner

ответ

0

Это может быть решена с помощью toCompletable(), как это предусмотрено в приведенном ниже примере:

public static void main(String[] args) { 
    Observable.just(1).zipWith(Observable.just(2), (a, b)->a+b).toCompletable().subscribe(()->System.out.println("done")); 
} 
Смежные вопросы