System.reactive 空的可观察订阅,但onNext未调用?

System.reactive 空的可观察订阅,但onNext未调用?,system.reactive,reactive-programming,rx-java,System.reactive,Reactive Programming,Rx Java,我想要一个Observable,它除了在订阅时调用Observable的onNext回调外,什么都不做。我想我在Observable.empty()中发现了这一点,但以下情况不会导致调用Observable的onNext回调: Observable<Void> emptyObservable = Observable.empty(); emptyObservable.subscribe(passedinObserver); Observable emptyoobservable=O

我想要一个Observable,它除了在订阅时调用Observable的onNext回调外,什么都不做。我想我在Observable.empty()中发现了这一点,但以下情况不会导致调用Observable的onNext回调:

Observable<Void> emptyObservable = Observable.empty();
emptyObservable.subscribe(passedinObserver);
Observable emptyoobservable=Observable.empty();
emptyObservable.subscribe(passedInObservable);
passedInObserver的定义如下:

Observer<Void> passedinObserver = new Observer<Void> {
        @Override public void onCompleted() {

        }

        @Override public void onError(Throwable e) {

        }

        @Override public void onNext(Void aVoid) {
            Log.d("onNext called");
        }
};
观察者通过观察者=新观察者{
@覆盖已完成的公共void(){
}
@覆盖公共无效onError(可丢弃的e){
}
@覆盖公共void onNext(void aVoid){
Log.d(“onNext调用”);
}
};

尝试
可观察。只要(…)
。它将返回一个值,并因此调用
.onNext(…)
尝试
可观察。只需(…)
。它将返回一个值,因此调用
.onNext(…)
onNext
不会被调用,
onCompleted
会对这种类型的
可观察的
onNext
不会被调用,
onCompleted
会对这种类型的
可观察的
进行调用,您可以使用
可观察的.just(null)
或任何值,因为您无论如何都要获取该值。但是,当值通过可观察序列时,似乎需要执行额外的工作,因此可以使用
doOnNext()


您可以使用
Observable.just(null)
或任何值,因为您无论如何都要获取该值。但是,当值通过可观察序列时,似乎需要执行额外的工作,因此可以使用
doOnNext()


作为其他答案的替代,由于
empty
只调用
onCompleted
而不调用
onNext
,可能您只想在
onCompleted
中完成工作,而不是在
onNext

作为其他答案的替代,由于
empty
只调用
onCompleted
而不调用
onNext
,也许你只是想在
onCompleted
中完成你的工作,而不是在
onNext

@MichałK-我更像是一个C开发者。很抱歉。修正了。@MichałK-我更像一个C#开发者。很抱歉。固定的。
Observable.range(1, 10)
.doOnNext(v -> Log.d("onNext called"))
.map(v -> v * v)
.subscribe(System.out::println);