肥宅钓鱼网
当前位置: 首页 钓鱼百科

springcloud与rpc的区别(RxJava响应式编程框架)

时间:2023-08-22 作者: 小编 阅读量: 1 栏目名: 钓鱼百科

过滤型操作符本节介绍RxJava的两个过滤型操作符:filter操作符和distinct操作符。filter操作符filter操作符用于判断Observable弹射的每一个消息是否满足条件。如果满足条件,就继续向下游的观察者传递;如果不满足条件,就过滤掉。filter操作符的处理流程如图4-4所示。

过滤型操作符

本节介绍RxJava的两个过滤型操作符:filter操作符和distinct操作符。

filter操作符

filter操作符用于判断Observable弹射的每一个消息是否满足条件。如果满足条件,就继续向下游的观察者传递;如果不满足条件,就过滤掉。filter操作符的处理流程如图4-4所示。

图4-4 filter操作符的处理流程

filter操作符使用Func1函数式接口传入判断条件,其演示代码如下:

package com.crazymaker.demo.rxJava.basic;...@Slf4jpublic class FilterOperatorDemo { /** *演示filter的基本使用 */ @Test public void filterDemo() { //通过filter筛选能被5整除的数 Observable.range(1, 20) .filter(new Func1<Integer, Boolean>() { @Override public Boolean call(Integer integer) { return integer % 5 == 0; } }) .subscribe(i -> log.info("filter int->"i)); }}

上述演示代码首先通过rang操作符弹射一个范围为[1,20]的整数序列,然后通过filter操作符对弹射的数据进行筛选,筛选出能被5整除的数。

运行这个演示程序,输出的结果如下:

21:45:40.579 [main] INFO c.c.d.r.b.FilterOperatorDemo - filter int->521:45:40.584 [main] INFO c.c.d.r.b.FilterOperatorDemo - filter int->1021:45:40.584 [main] INFO c.c.d.r.b.FilterOperatorDemo - filter int->1521:45:40.585 [main] INFO c.c.d.r.b.FilterOperatorDemo - filter int->20

上面的演示代码,如果使用Lambda表达式进行改写,那么改写后的代码如下:

//使用Lambda形式演示filter的基本使用 @Test public void filterDemoLambda() { //通过filter筛选出能被5整除的数 Observable.range(1, 20) .filter(integer -> integer%5==0) .subscribe(i -> log.info("filter int->"i)); }

distinct操作符

distinct操作符用于在消息流中过滤掉重复的元素,过滤规则为:

只允许还没有被弹射过的元素弹射出去。distinct操作符的处理流程如图4-5所示。

图4-5 distinct操作符的处理流程

下面是一个简单的distinct操作符的使用实例:

package com.crazymaker.demo.rxJava.basic;//省略import@Slf4jpublic class FilterOperatorDemo { /** *演示distinct基本使用 */ @Test public void distinctDemo() { Observable.just("apple", "pair", "banana", "apple", "pair") .distinct() //使用distinct过滤重复元素 .subscribe(s -> log.info("distinct s->"s)); }}

运行这个演示程序,输出的结果如下:

15:05:32.229 [main] INFO c.c.d.r.b.FilterOperatorDemo - distinct s->apple15:05:32.234 [main] INFO c.c.d.r.b.FilterOperatorDemo - distinct s->pair15:05:32.234 [main] INFO c.c.d.r.b.FilterOperatorDemo - distinct s->banana

从输出的结果可以看出,由于消息流前面已经被弹射过了,因此消息流后面的"apple"、"pair"两个元素被过滤了。

本文给大家讲解的内容是SpringCloudRPC远程调用核心原理: RxJava响应式编程框架,过滤型操作符
  1. 下篇文章给大家讲解的是SpringCloudRPC远程调用核心原理: RxJava响应式编程框架,转换型操作符;
  2. 觉得文章不错的朋友可以转发此文关注小编;
  3. 感谢大家的支持!
    推荐阅读
  • 去除黑眼圈和细纹的眼霜哪个好(消除黑眼圈细纹眼膜眼霜排行榜)

    排水并抽取脂肪堆积物,滋润并改善肌肤弹性,提升眼部。使眼部基质变得丰盈饱满,紧致修复受损细胞,有效缓解黑眼圈。紧致眼部松弛,减缓眼部皱纹,帮助眼周提升。减缓眼部浮肿,减缓上眼皮下垂。结合维生素原A,丰盈表皮层,有效淡化皱纹。长期使用,眼角皱纹明显减少。梦妆奇迹眼霜能有效地恢复眼周肌肤弹性,抚平皱纹,减淡黑眼圈,让眼睛看起来炯炯有神。同时纠正了皱纹、弹力和黑眼圈的问题。

  • 长续航版model3实际续航里程(model3长续航里程)

    长形田字车标国产车这是来自美国的豪华品牌林肯汽车的标志。林肯是中国二线豪华品牌。品牌知名度不好,因为林肯进入中国市场比较晚。在日常使用中,这辆车行驶600公里没有问题。Model3是特斯拉旗下的中型轿车,也是特斯拉旗下的入门级轿车。Model3也是特斯拉第一款国产车型。四驱车型是双电机车型。多连杆独立悬架实际上是基于双叉臂悬架的改进,将双叉臂悬架的两个叉臂改为单独的连杆。

  • 肉苁蓉和什么一起泡水好 肉苁蓉和什么一起泡效果好

    肉苁蓉可以长期泡水喝吗若有对症的话,可以在中医医师的指导下进行泡水饮用;若无对症的话,建议不要长期用肉苁蓉泡水喝。肉苁蓉是一种中药材,具有很强的药理作用,服饮肉苁蓉有补肾阳、益精血和润肠通便的功效,因此,若有相应需求的话,可以找专业中医医师进行诊断,然后在中医医师的指导下进行服饮,若是体质较为健康的话,可以不喝,以免过于滋补,不利于身体健康。

  • 集体土地承包交哪些税项(集体建设用地土地使用税谁交)

    城市、县城、建制镇、工矿区的具体征税范围,由各省、自治区、直辖市人民政府划定。

  • 香蕉最好吃的做法大全家常(推荐2种香蕉的好吃做法)

    还在我们的日常生活中,好像对于香蕉的美食确实不多,经常吃的美食莫过于水果沙拉,酸奶沙拉等等。煎饼机预热30秒,把香蕉小饼均匀的放在锅内,无须加油,盖上盖按照馅饼模式,双面各烤两分半钟即可食用。

  • 枇杷果能直接吃吗(枇杷果能不能直接吃)

    枇杷味道甜美,营养丰富,其中含有丰富的果糖、葡萄糖、胡萝卜素、维生素、钾、铁、磷、钙等多种营养成分,且其中的营养成分容易被人体所吸收利用,所以它是可以剥皮后直接食用的,也可以将它做成罐头、酿酒等食用。

  • 立冬节气是冬至节气吗(冬至和立冬有区别吗)

    以下内容希望对你有帮助!冬至和立冬的主要从时间、含义、太阳位置三个有所不同。立冬在每年公历的11月8日左右,冬至在每年公历的12月22日前后;立冬节气后,要开始准备过冬食物,冬至节气是数九寒天的开始,要开始补冬御寒;立冬节气时,太阳公转到黄经225°位置,开始正式进入冬季,冬至节气时,太阳公转到黄经270°位置,开始昼短夜长的冬季气象。

  • 金鸡鞋油是哪里生产的(金鸡鞋油价格)

    金鸡鞋油价格“金鸡牌鞋油”在我国可谓是妇孺皆知的品牌,它的创立者傅秀山,1917年出生在冀县(今衡水市冀州区)傅家庄的一个贫苦农民家庭1931年,年仅14岁的傅秀山,坐上了驶往天津卫的轮船“当时没有钱,就坐在轮船。

  • 克莱斯勒2.4发动机(克莱斯勒2.4发动机正时)

    克莱斯勒的交叉火力3.2升自然吸气v6发动机的最大扭矩为218马力和310牛米。克莱斯勒交叉火力前悬架采用双叉臂独立悬架,后悬架采用五连杆独立悬架。多连杆独立悬架也是基于双叉臂悬架的改进,用单独的连杆代替了双叉臂悬架的两个叉臂。驾驶证叫机动车驾驶证,也是驾驶证。根据法律规定,机动车驾驶人需要办理驾驶证。没有这个技能,随意驾驶机动车,可能会发生交通事故,普通人没有牌照是不能上路行驶的。

  • 对卫星通信的理解(全面了解卫星通信)

    卫星通信是指地球上的无线电通信站之间利用人造卫星作为中继站而进行的通信在这个通信系统中卫星就是一个高悬天际的信道如何理解中继站这个概念呢?这位航天小姐姐的漫画是不是让你秒懂了呢?