判断操作
主要是做一些判断操作, 这里都是发送一个信息
count
计算总的发送多少信息
Observable.just("A", "B").count().subscribe { c -> println("this is num of $c") }
reduce
和scan 有很多相似之处,但是scan 每次都会发送,但是reduce 只会发送一次,是不是很神奇
Observable.just(5, 3, 7, 10, 2, 14)
.reduce { total, next -> total + next }
.subscribe { s -> println("This sum is $s") }
all
总的条件,和filter 有点像,但是这里all是总的条件,所有的条件满足了发送true,否者发送false.
Observable.just("A", "B").all { it.length == 1 }.subscribe { s -> println("this is 什么情况 $s")
any
和all 用法差不多,但是条件是任何一个中满足条件就会发送true, 否者才发送false
Observable.just("A", "B", "C").any { it == "C" }.subscribe { s -> println("this is 什么情况 $s") }
contain
也是条件判断,就是所有的item 中是否含有相应条件的item.
Observable.just("A", "B", "C").contains("C").subscribe { s -> println("this is 什么情况 $s") }