rxjava中的filter不就是if吗,有别的高端的地方吗
rxjava中的filter不就是if吗,有别的高端的地方吗
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
rxjava中的filter不就是if吗,有别的高端的地方吗
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(3)
Filter应该是翻译成过滤器,在RxJava中是常用的过滤操作符,其目的就是按照指定条件进行过滤,把符合条件的结果传给订阅者。单独看其功能并不稀奇,但是结合RxJava来看,这是一项必要并且很常用的功能。
你所说的不就是if么,从根本上来看确实用到了if所代表的判断逻辑,但是不能说房子是砖头砌的,就说房子就是砖头。
filter
一般翻译成“过滤器”,http://baike.baidu.com/item/%...
看起来是这么回事,但仔细想想还是有区别的,
filter
是过滤器,而if
里是判断逻辑,两者的关系就好比地铁站的 自动检票机 与 检票机的程序 的关系一样。同时还使用
filter
还能将任务分散到各处,各司其职,逻辑清析,假如有一组数据需要满足10个条件才是有效的数据,我们可以加10个filter
,经过了这10个filter
的数据都是有效数据,之后你可以安心的处理你的逻辑,排错也会相对方便,不但提高了代码的可读性也避免了在处理逻辑之前层层嵌套的if-else
,配合其它的操作符整个处理过程就是一条流水线。