本页展示的操作符用于对整个序列执行算法操作或其它操作,由于这些操作必须等待数据发射完成(通常也必须缓存这些数据),它们对于非常长或者无限的序列来说是危险的,不推荐使用。
rxjava-math 模块的操作符
averageInteger( )— 求序列平均数并发射averageLong( )— 求序列平均数并发射averageFloat( )— 求序列平均数并发射averageDouble( )— 求序列平均数并发射max( )— 求序列最大值并发射maxBy( )— 求最大key对应的值并发射min( )— 求最小值并发射minBy( )— 求最小Key对应的值并发射sumInteger( )— 求和并发射sumLong( )— 求和并发射sumFloat( )— 求和并发射sumDouble( )— 求和并发射
其它聚合操作符
concat( )— 顺序连接多个Observablescount( )andcountLong( )— 计算数据项的个数并发射结果reduce( )— 对序列使用reduce()函数并发射最终的结果collect( )— 将原始Observable发射的数据放到一个单一的可变的数据结构中,然后返回一个发射这个数据结构的ObservabletoList( )— 收集原始Observable发射的所有数据到一个列表,然后返回这个列表toSortedList( )— 收集原始Observable发射的所有数据到一个有序列表,然后返回这个列表toMap( )— 将序列数据转换为一个Map,Map的key是根据一个函数计算的toMultiMap( )— 将序列数据转换为一个列表,同时也是一个Map,Map的key是根据一个函数计算的