RxJava 创建操作符form
2016-02-18 16:17
375 查看
form操作符也是调用了create来创建的Observable部分源码:
public final static <T> Observable<T> from(T[] array) { return from(Arrays.asList(array)); }
public final static <T> Observable<T> from(Iterable<? extends T> iterable) { return create(new OnSubscribeFromIterable<T>(iterable)); }
public final static <T> Observable<T> create(OnSubscribe<T> f) { return new Observable<T>(hook.onCreate(f)); }from操作符是将其他类型的对象或数据类型转换成Observable,如:
String[] arr={"one","two","three","four","five"}; Observable.from(arr).subscribe(new Subscriber<String>() { @Override public void onCompleted() { LogUtils.d("-------------->onCompleted:"); } @Override public void onError(Throwable e) { LogUtils.d("-------------->onError:" + e); } @Override public void onNext(String s) { LogUtils.d("-------------->onNext:" + s); } });
当然也可以有简化方式,比如你只关心onNext,可以Integer[] arr2={1,2,3,4,5};Observable.from(arr2).subscribe(new Action1<Integer>() {@Overridepublic void call(Integer integer) {}});不奇怪,源码中封装了一下:
同样可以之关心异常或者结束或者同时关注等等
Observable.from(arr2).subscribe(new Action1<Integer>() {@Overridepublic void call(Integer integer) {}}, new Action1<Throwable>() {@Overridepublic void call(Throwable throwable) {}}, new Action0() {//complete@Overridepublic void call() {}});
相关文章推荐
- java native关键字
- JAVA 3DES 加密/解密 32位密钥
- springMVC的容器初始化过程
- java基于P2P的聊天和文件传输实例
- 随笔
- Java多线程之Callable、Future和FutureTask
- spring 多数据源的配置
- 理解Java多态
- hdu 2140 java
- 浅谈JAVA中的 hashCode()方法
- java的可序列化(转载)
- 深入理解Java:注解(Annotation)--注解处理器
- Spring实战学习笔记之SpEL表达式
- 深入理解Java:注解(Annotation)自定义注解入门
- Struts2-2.了解struts.xml的查找顺序
- java静态代理和动态代理
- java System.getProperty()用法
- 深入理解Java:注解(Annotation)基本概念
- RxJava 创建操作符create
- Java注解Annotation基础