RxJava 过滤操作符 distinct和elementAt
2016-02-29 11:37
666 查看
distinct类似于sql关键字distinct 去重,elementAt 获取指定索引的结果
例子1:去重
结果:
03-01 11:27:09.140 28781-28781/com.rxandroid.test1 D/----->: ------>call():1
03-01 11:27:09.140 28781-28781/com.rxandroid.test1 D/----->: ------>call():2
03-01 11:27:09.140 28781-28781/com.rxandroid.test1 D/----->: ------>call():3
03-01 11:27:09.140 28781-28781/com.rxandroid.test1 D/----->: ------>call():12
例子2:获取指定索引的结果:
03-01 11:34:27.360 12323-12323/com.rxandroid.test1 D/----->: ------->onNext()6
03-01 11:34:27.360 12323-12323/com.rxandroid.test1 D/----->: ------>onCompleted()
注意不能越界:否则将会回掉onError()方法 IndexOutOfBoundsException
例子1:去重
Observable.just(1, 2, 3, 1, 2, 3, 12, 3).distinct().subscribe(new Action1<Integer>() { @Override public void call(Integer integer) { LogUtils.d("------>call():" + integer); } });
结果:
03-01 11:27:09.140 28781-28781/com.rxandroid.test1 D/----->: ------>call():1
03-01 11:27:09.140 28781-28781/com.rxandroid.test1 D/----->: ------>call():2
03-01 11:27:09.140 28781-28781/com.rxandroid.test1 D/----->: ------>call():3
03-01 11:27:09.140 28781-28781/com.rxandroid.test1 D/----->: ------>call():12
例子2:获取指定索引的结果:
Observable.range(1, 10).elementAt(5).subscribe(new Observer<Integer>() { @Override public void onCompleted() { LogUtils.d("------>onCompleted()"); } @Override public void onError(Throwable e) { LogUtils.d("------>onError()" + e); } @Override public void onNext(Integer integer) { LogUtils.d("------->onNext()" + integer); } });结果为:
03-01 11:34:27.360 12323-12323/com.rxandroid.test1 D/----->: ------->onNext()6
03-01 11:34:27.360 12323-12323/com.rxandroid.test1 D/----->: ------>onCompleted()
注意不能越界:否则将会回掉onError()方法 IndexOutOfBoundsException
相关文章推荐
- 【转】Java ConcurrentModificationException 异常分析与解决方案--还不错
- 《JAVA编程思想》日志(四)------控制执行流程
- Java中的DatagramPacket与DatagramSocket的初步
- 【转】Java ConcurrentModificationException异常原因和解决方法
- 使用eclipse和maven创建activiti项目基础配置
- 使用eclipse和maven创建activiti项目基础配置
- java list add 方法理解
- 【java基础】Lock与synchronized 的区别
- java中servlet的各种路径
- Eclipse项目导入Android Studio错误积累
- 【java基础】Java中的强引用,软引用,弱引用和虚引用
- JAVA中int、String的类型转换
- Java快速排序
- 【java基础】线程安全的单例模式
- 【leetcode】【34】Search for a Range
- Java内存泄露原因详解
- Java多线程学习(二)
- java 日期格式 毫秒
- 【Maven】创建一个结构清晰基于Maven的JavaWeb项目
- java日期类型转换总结date timestamp calendar string