rxjava中的filter不就是if吗,有别的高端的地方吗
看起来是这么回事,但仔细想想还是有区别的,filter
是过滤器,而if
里是判断逻辑,两者的关系就好比地铁站的 自动检票机 与 检票机的程序 的关系一样。
同时还使用filter
还能将任务分散到各处,各司其职,逻辑清析,假如有一组数据需要满足10个条件才是有效的数据,我们可以加10个filter
,经过了这10个filter
的数据都是有效数据,之后你可以安心的处理你的逻辑,排错也会相对方便,不但提高了代码的可读性也避免了在处理逻辑之前层层嵌套的if-else
,配合其它的操作符整个处理过程就是一条流水线。
3 回答956 阅读✓ 已解决
2 回答1k 阅读✓ 已解决
1 回答835 阅读✓ 已解决
2 回答945 阅读
2 回答883 阅读
1 回答817 阅读
1 回答864 阅读
Filter应该是翻译成过滤器,在RxJava中是常用的过滤操作符,其目的就是按照指定条件进行过滤,把符合条件的结果传给订阅者。单独看其功能并不稀奇,但是结合RxJava来看,这是一项必要并且很常用的功能。
你所说的不就是if么,从根本上来看确实用到了if所代表的判断逻辑,但是不能说房子是砖头砌的,就说房子就是砖头。