RxJava2 / RxAndroid2操作符distinct去重

distinct去除重复的数据,例如:

package zhangphil.app; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; import android.util.Log; import io.reactivex.Observable; import io.reactivex.android.schedulers.AndroidSchedulers; import io.reactivex.disposables.CompositeDisposable; import io.reactivex.observers.DisposableObserver; import io.reactivex.schedulers.Schedulers; public class MainActivity extends AppCompatActivity { private final String TAG = getClass().getSimpleName(); private CompositeDisposable mCompositeDisposable = new CompositeDisposable(); private Integer[] test_data = { 1, 2, 2, 3, 4, 5, 5, 6, 7, 7, 8, 9 }; //故意设置若干重复的数据,等待去重复数据 @Override public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); test(); } private void test() { DisposableObserver disposableObserver = new DisposableObserver() { @Override public void onNext(Integer i) { Log.d(TAG, "#####开始#####"); Log.d("数据", String.valueOf(i)); Log.d(TAG, "#####结束#####"); } @Override public void onComplete() { Log.d(TAG, "onComplete"); } @Override public void onError(Throwable e) { Log.e(TAG, e.toString(), e); } }; Observable observable = Observable.fromArray(test_data); mCompositeDisposable.add(observable .subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .distinct() .subscribeWith(disposableObserver)); } @Override protected void onDestroy() { super.onDestroy(); // 如果退出程序,就清除后台任务 mCompositeDisposable.clear(); } }

代码输出:

05-18 10:19:32.361 2346-2346/zhangphil.app D/MainActivity: #####开始##### 05-18 10:19:32.361 2346-2346/zhangphil.app D/数据: 1 05-18 10:19:32.361 2346-2346/zhangphil.app D/MainActivity: #####结束##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####开始##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/数据: 2 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####结束##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####开始##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/数据: 3 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####结束##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####开始##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/数据: 4 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####结束##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####开始##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/数据: 5 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####结束##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####开始##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/数据: 6 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####结束##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####开始##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/数据: 7 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####结束##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####开始##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/数据: 8 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####结束##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####开始##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/数据: 9 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: #####结束##### 05-18 10:19:32.362 2346-2346/zhangphil.app D/MainActivity: onComplete

android接口去重,RxJava2 / RxAndroid2操作符distinct去重相关推荐

  1. Access SQL distinct 去重失效问题

    今天碰到一个很奇怪的问题,开发的一个考试系统采用Access数据库作为题库,里面建了类似下面这样的临时表用于导入Excel格式的题库: 临时表 ID(自增,长整型) 专业(文本) 科目(文本) 题型( ...

  2. Database之SQLSever:SQL命令实现四则运算、desc降序、like模糊查询、distinct去重、MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略

    Database之SQLSever:SQL命令实现四则运算.desc降序.like模糊查询.distinct去重.MAX/MIN/SUM/AVG/COUNT/GROUP/having等案例之详细攻略 ...

  3. Linq distinct去重方法之一

    var result = query.Distinct().ToList(); List<DeliveryOrderViewModel> dov = result.GroupBy( p = ...

  4. list集合用stream流distinct去重失效问题

    使用Stream distinct()去重实体类List失效问题 注意:这里用的是 filter实现 根据某个属性对实体list去重 思路: 1.创建用于接受临时数据的list. 2.在filter中 ...

  5. 使用Stream distinct()去重失效问题

    使用Stream distinct()去重实体类List失效问题 注意:这里用的是 filter实现 根据某个属性对实体list去重 思路: 1.创建用于接受临时数据的list. 2.在filter中 ...

  6. MySQL学习(8)︱DISTINCT去重与表连接

    DISTINCT去重 distinct用于在查询中返回列的唯一不同值(去重复),支持单列或多列.在实际的应用中,表中的某一列含有重复值是常见的,如employee表的dept列.如果在查询数据时,希望 ...

  7. distinct去重用法

    distinct去重用法 distinct distinct 语法 : select distinct 字段1 , 字段2- from 表名 distinct 作用 : 去重 , 当字段名有多个时需完 ...

  8. SQLSever 第二堂课,主要学习内容为top查询前多少行,distinct去重,order by排序,group by分组,最重要子查询...

    go update xueshengxinxi set name='你好' where code=1--修改第一行name的名字,改成"你好" update xueshengxin ...

  9. 大数据Spark面试,distinct去重原理,是如何实现的

    最近,有位朋友问我,distinct去重原理是怎么实现的? "在面试时,面试官问他了解distinct算子吗?" "了解啊,Spark的rdd,一种transFormat ...

最新文章

  1. 互联网协议 — IPSec 安全隧道协议 — NAT-T
  2. python面试常见问题-Python面试中最常见的25个问题
  3. java蓝桥杯凑算是,第七届蓝桥杯JAVA B组真题解析-凑算式(第三题)
  4. java 字符串排列组合_Java 程序计算列出字符串的所有排列组合
  5. 深入浅出理解 Variable used in lambda expression should be final or effectively final
  6. 2019.7.29学习整理python
  7. Linux 中/etc/profile、~/.bash_profile 环境变量执行过程
  8. Qgis3.2编译移植成功文档完整版
  9. 完整的连接器设计手册_如何设计符合整车厂要求的CAN物理层接口电路?
  10. python 中统计超大文件行数
  11. 深入理解OracleExadata
  12. 蓝桥杯真题-数列求值(填空-10分)
  13. 基于springboot网上书城系统
  14. 手机任务栏html,任务栏是什么
  15. Worthington核心酶——木瓜蛋白酶的特征及相关应用
  16. 腾讯地图获取所选区域坐标
  17. h5微信本地调试 vue_UniApp本地调试H5(谷歌chrome浏览器)跨域问题的解决方法,亲测可用...
  18. 小米电视android刷机,小米电视怎么root 小米电视如何安装第三方软件 解决方法图解...
  19. iPhone轻松共享wifi密码给好友
  20. 软考是什么?考哪个科目容易过?

热门文章

  1. 2018_WWW_Dual Graph Convolutional Networks for Graph-Based Semi-Supervised Classification
  2. 计算机网络fsk是什么意思,一文读懂LoRa与FSK的共性与区别-通信/网络-与非网
  3. No Excuse!不给自己任何借口
  4. java 整数除法整数_Java整数间的除法运算那点事
  5. Python Exceptions 异常处理全过程以及异常模块详细解析
  6. 支持nvme的linux_一种linux下进行NVMESSD格式化的方法与流程
  7. PAT乙级 1009 说反话
  8. javax.mail 阿里云服务器使用163邮箱发送邮件
  9. 你用啥不好?非要用0.1uF电容?
  10. 密度峰值聚类算法DPC(Density Peak Clustering)理论基础与python实现