RX操作符之Observable的创建方式二(defer、range、interval、timer、Empty、Never、Throw)
来源:互联网 发布:mac mini2012拆挡板 编辑:程序博客网 时间:2024/04/29 10:31
String [] items = new String[] {"just1","just2","just3","just4","just5","just6"};Observable<String> myObservable = Observable.fromArray(items);Subject<String> subject = new Subject<String>() { @Override public void onSubscribe(Disposable d) {
} @Override public void onNext(String value) { System.out.println("onNext................."+value); } @Override public void onError(Throwable e) { } @Override public void onComplete() { System.out.println("onCompleted................."); } @Override protected void subscribeActual(Observer<? super String> observer) { } @Override public boolean hasObservers() { return false; } @Override public boolean hasThrowable() { return false; } @Override public boolean hasComplete() { return false; } @Override public Throwable getThrowable() { return null; }};Subject<String> subject1 = new Subject<String>() { @Override public void onSubscribe(Disposable d) { } @Override public void onNext(String value) { System.out.println("onNext................."+value); } @Override public void onError(Throwable e) { } @Override public void onComplete() { System.out.println("onCompleted1................."); } @Override protected void subscribeActual(Observer<? super String> observer) { } @Override public boolean hasObservers() { return false; } @Override public boolean hasThrowable() { return false; } @Override public boolean hasComplete() { return false; } @Override public Throwable getThrowable() { return null; }};myObservable.subscribe(subject);myObservable.subscribe(subject1);
9-05 15:32:58.129 18491-18491 I/System.out: onNext.................just109-05 15:32:58.129 18491-18491 I/System.out: onNext.................just209-05 15:32:58.129 18491-18491 I/System.out: onNext.................just309-05 15:32:58.129 18491-18491 I/System.out: onNext.................just409-05 15:32:58.129 18491-18491 I/System.out: onNext.................just509-05 15:32:58.129 18491-18491 I/System.out: onNext.................just609-05 15:32:58.129 18491-18491 I/System.out: onCompleted.................09-05 15:32:58.129 18491-18491 I/System.out: onNext.................just109-05 15:32:58.129 18491-18491 I/System.out: onNext.................just209-05 15:32:58.129 18491-18491 I/System.out: onNext.................just309-05 15:32:58.139 18491-18491I/System.out: onNext.................just409-05 15:32:58.139 18491-18491 I/System.out: onNext.................just509-05 15:32:58.139 18491-18491/com.vise.snowdemo I/System.out: onNext.................just609-05 15:32:58.139 18491-18491/com.vise.snowdemo I/System.out: onCompleted1.................
二、Range创建一个发射特定整数序列的Observable,接收两个参数,第一个参数是范围的起始值,第二个参数是范围的数据数目,即需要多产生多少个这样的值。如果你将第二个参数设为0,将导致Observable不发射任何数据(如果设置为负数,会抛异常)。range默认不在任何特定的调度器上执行
Observable<Integer> myObservable = Observable.range(5,10);Subject<Integer> mySubscriber = new Subject<Integer>() { @Override public void onSubscribe(Disposable d) { } @Override public void onNext(Integer value) { System.out.println(String.valueOf(value)); } @Override public void onError(Throwable e) { } @Override public void onComplete() { System.out.println("onCompleted................."); } @Override protected void subscribeActual(Observer<? super Integer> observer) { } @Override public boolean hasObservers() { return false; } @Override public boolean hasThrowable() { return false; } @Override public boolean hasComplete() { return false; } @Override public Throwable getThrowable() { return null; }};myObservable.subscribe(mySubscriber);09-05 15:44:22.169 27514-27514 I/System.out: 509-05 15:44:22.169 27514-27514 I/System.out: 609-05 15:44:22.169 27514-27514 I/System.out: 709-05 15:44:22.169 27514-27514 I/System.out: 809-05 15:44:22.169 27514-27514 I/System.out: 909-05 15:44:22.169 27514-27514 I/System.out: 1009-05 15:44:22.169 27514-27514 I/System.out: 1109-05 15:44:22.169 27514-27514 I/System.out: 1209-05 15:44:22.169 27514-27514 I/System.out: 1309-05 15:44:22.169 27514-27514 I/System.out: 1409-05 15:44:22.169 27514-27514 I/System.out: onCompleted...
三、IntervalInterval操作符返回一个Observable,它按固定的时间间隔发射一个无限递增的整数序列。RxJava将这个操作符实现为interval方法。它接受一个表示时间间隔的参数和一个表示时间单位的参数。结果递增且不断增加五、Empty 创建一个不发射任何数据但是正常终止的Observable六、Never 创建一个不发射数据也不终止的Observable七、Throw 创建一个不发射数据以一个错误终止的Observable
阅读全文
0 0
- RX操作符之Observable的创建方式二(defer、range、interval、timer、Empty、Never、Throw)
- RX操作符之Observable的创建方式二(defer、range、interval、timer、Empty、Never、Throw)
- RX操作符之Observable的创建方式一(just、from、repeat、repeatWhen)
- RX操作符之Observable的创建方式一(just、from、repeat、repeatWhen)
- RxJava与网络相关的操作符(range/defer/retry/repeat/timer/delay/interval/BehaviorSubject/zip)
- RX操作符之对Observable发射的数据执行变换操作二(scan、groupby、buffer、window)
- RX操作符之对Observable发射的数据执行变换操作一(map、flatmap)
- RX操作符之对Observable发射的数据执行变换操作一(map、cast、flatmap、flatmapiteriable、switchmap)
- RxJava 创建操作符 timer与interval
- Rx系列二 | Observer | Observable
- Rxjava的Observable创建操作符介绍
- RxAndroid之初体验——Create、From、interval、just、range操作符的基本使用
- RxJava-创建Observable操作符
- RX操作之辅助操作符二(doonunsubscribe、doOnCompleted、doOnError、doOnTerminate、finallyDo、delay、delaySubscription)
- Observable的操作符
- RxJava 创建操作符 defer
- Android函数响应式编程——必学的RxJava创建操作符create、just、from、interval、range、repeat
- RxJava使用小总结:Observable的创建方式、过滤Observable
- 安装配置ASMlib驱动
- 从王者荣耀聊聊游戏的帧同步
- XTU C语言程序设计实践作业0
- 第14届中国好空气暨新风+净化产业高峰论坛
- Codeforces 600E Lomsat gelral
- RX操作符之Observable的创建方式二(defer、range、interval、timer、Empty、Never、Throw)
- mybatis的动态sql详解(精)
- ctrlp快捷键
- CAD高版本转低版本的教程
- 刷题二
- webpack2.0 基本使用
- HTML5基础知识总结
- 【美图】从字符串" com.meitu/mtxx/6.8.0(ios10.2)/lang:zh "中取出6.8.0
- css、js笔记