RxJava - 当另一个完成时启动一个Observable

pab*_*dez 6 java reactive-programming observable rx-java

我有两个具有不同泛型类型的Observable:Observable o1和Observable o2

我被定义为o1 onComplet()和onNext()函数,我希望当这个Observable完成后,o2就可以启动了.

我尝试了Observable.concat(),但它们有不同的类型,所以这种方法不起作用......

那我该怎么做?

Dav*_*ten 7

castAs之前使用concatWith(ignoreElements也可以使用):

Observable<T> o1;
Observable<R> o2;

Observable<R> o3 = 
  o1.ignoreElements()
    .castAs(R.class)
    .concatWith(o2);
Run Code Online (Sandbox Code Playgroud)

或者,如果您正在使用泛型类型(因此无法使用R.class):

Observable<R> o3 = ((Observable<R>)(Observable<?>)
  o1.ignoreElements())
    .concatWith(o2);
Run Code Online (Sandbox Code Playgroud)