美文网首页
RxJava2.X-buffer

RxJava2.X-buffer

作者: 河马过河 | 来源:发表于2018-08-18 09:54 被阅读206次

    一、RxJava-buffer语法练习

      public Observable<Integer> getRxJavaDistinctData() {
            return Observable.just(1, 2, 2, 1, 1, 2, 3, 4, 5, 2);
        }
        public void rxJavaBufferExample() {
            Disposable disposable = model.getRxJavaDistinctData()
                    .subscribeOn(Schedulers.io())
                    .unsubscribeOn(Schedulers.io())
                    .buffer(3,2)
                    .observeOn(AndroidSchedulers.mainThread())
                    .subscribe(new Consumer<List<Integer>>() {
                        @Override
                        public void accept(List<Integer> integers) throws Exception {
                            LogUtils.error(TAG, "rxJavaBufferExample--Consumer--:" + Thread.currentThread().getName() + "--size:" + integers.size());
                            for (int integer : integers) {
                                LogUtils.error(TAG, "rxJavaBufferExample--Consumer--:" + Thread.currentThread().getName() + "--value:" + integer + "\n");
                            }
                        }
                    });
            compositeDisposable.add(disposable);
        }
    

    日志

    08-18 09:48:56.751 31305-31305/com.example.zhang E/MainPresenter: rxJavaBufferExample--Consumer--:main--size:3
        rxJavaBufferExample--Consumer--:main--value:1
        rxJavaBufferExample--Consumer--:main--value:2
        rxJavaBufferExample--Consumer--:main--value:2
        rxJavaBufferExample--Consumer--:main--size:3
        rxJavaBufferExample--Consumer--:main--value:2
    08-18 09:48:56.752 31305-31305/com.example.zhang E/MainPresenter: rxJavaBufferExample--Consumer--:main--value:1
        rxJavaBufferExample--Consumer--:main--value:1
        rxJavaBufferExample--Consumer--:main--size:3
        rxJavaBufferExample--Consumer--:main--value:1
        rxJavaBufferExample--Consumer--:main--value:2
        rxJavaBufferExample--Consumer--:main--value:3
        rxJavaBufferExample--Consumer--:main--size:3
        rxJavaBufferExample--Consumer--:main--value:3
        rxJavaBufferExample--Consumer--:main--value:4
        rxJavaBufferExample--Consumer--:main--value:5
        rxJavaBufferExample--Consumer--:main--size:2
        rxJavaBufferExample--Consumer--:main--value:5
        rxJavaBufferExample--Consumer--:main--value:2
    
    

    总结

    1、buffer(int count, int skip) count是buffer的最大值 skip是步长

    河马过河微信公众号.jpg

    相关文章

      网友评论

          本文标题:RxJava2.X-buffer

          本文链接:https://www.haomeiwen.com/subject/ncnxiftx.html