加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

rx-java – 带有Observable.just()和一个参数的RxJava flatMap

发布时间:2020-12-15 02:09:02 所属栏目:Java 来源:网络整理
导读:我正在使用Rx Java,我有一个问题来理解flatMap. Observable.just(1) .flatMap( item - Observable.just(item + 1),e - Observable.error(e),() - Observable.never()) .subscribe( i - { Log.d(TAG,"Got " + i); },e - { Log.d(TAG,"RxJava ERROR",e); });
我正在使用Rx Java,我有一个问题来理解flatMap.

Observable.just(1)
                .flatMap(
                        item -> Observable.just(item + 1),e -> Observable.error(e),() -> Observable.never())
                .subscribe(
                        i -> {
                            Log.d(TAG,"Got " + i);
                        },e -> {
                            Log.d(TAG,"RxJava ERROR",e);
                        });

失败了

java.lang.NullPointerException: Attempt to invoke virtual method 'void rx.internal.operators.OperatorMapNotification$SingleEmitter.offer(java.lang.Object)' on a null object reference
at rx.internal.operators.OperatorMapNotification$1.onNext(OperatorMapNotification.java:82)
at rx.internal.util.ScalarSynchronousObservable$1.call(ScalarSynchronousObservable.java:46)
at rx.internal.util.ScalarSynchronousObservable$1.call(ScalarSynchronousObservable.java:35)
at rx.Observable$1.call(Observable.java:145)
at rx.Observable$1.call(Observable.java:137)
at rx.Observable$1.call(Observable.java:145)
at rx.Observable$1.call(Observable.java:137)
at rx.Observable.subscribe(Observable.java:7803)
at rx.Observable.subscribe(Observable.java:7579)

相同的代码,但有
Observable.just(1,2,3)
工作正常

Got 2
Got 3
Got 4

它是一个错误还是为什么RxJava只用一个参数表现不同?
RxJava版本是1.0.13

解决方法

这是1.0.13和1.0.14的错误.修复程序将在1.0.15(尚未到期日)提供.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读