JAVA8新特性之中间操作二

一:排序

      1:sorted()自然排序
              JAVA8新特性之中间操作二_第1张图片

      2:sorted(Comparator com)定制排序
             JAVA8新特性之中间操作二_第2张图片
             效果:
                JAVA8新特性之中间操作二_第3张图片

二:终止操作之查找与匹配

       1: allMatch,检查是否匹配所有元素
              JAVA8新特性之中间操作二_第4张图片
             效果:
                 

       2:anyMatch,检查是否匹配至少一个元素
              JAVA8新特性之中间操作二_第5张图片
              效果:
                

       3:noneMatch,检查是否没有匹配所有元素
               JAVA8新特性之中间操作二_第6张图片 
              效果:
                

       4:findFirst,返回第一个元素
              JAVA8新特性之中间操作二_第7张图片
              效果:
                

       5:findAny,返回当前流中任意一个元素
              JAVA8新特性之中间操作二_第8张图片
             效果:
               

       6:count,返回当前流中的总个数
             JAVA8新特性之中间操作二_第9张图片
            效果:
              

       7:max,返回流中最大值
              JAVA8新特性之中间操作二_第10张图片
              效果:
                

       8:min,返回流中最小值
               JAVA8新特性之中间操作二_第11张图片
              效果:
                  

三:归约与收集

        1:归约,指定是可以将流中元素反复结合起来,得到一个值
              ⑴ reduce(T identity,BinaryOperator accumulator),identity:它允许用户提供一个循环计算的初
                  始值,accumulator:计算的累加器,其方法签名为apply(T t,U u),在该reduce方法中第一个参数t
                  为上次函数计算的返回值,第二个参数u为Stream中的元素,这个函数把这两个值计算apply,得到的
                  和会被赋值给下次执行这个方法的第一个参数.
                   JAVA8新特性之中间操作二_第12张图片
                   效果:
                    
                  注释:刚开始以10位起始值,那么就是x为10,y为2,第一次累加值为12,。
                             后面同样以12为起始值,x为12,y为3,。后面同理,最终的结果就是
                            10+2+3+4+5+6+7+8+9=54.

              ⑵reduce(BinaryOperator)
                   JAVA8新特性之中间操作二_第13张图片
                  效果:
                    
                   注意:map和reduce的连接通常称为map-reduce模式,因Google用它来进行
                              网络搜索而出名。

         2:collect-收集,将流转换为其他形式。接收一个Collector接口的实现,用于给Stream
               中元素做汇总的方法。
              JAVA8新特性之中间操作二_第14张图片 
             ⑴将一个集合中姓名的字段筛选出来,然后转换为List集合
                 JAVA8新特性之中间操作二_第15张图片
                效果:
                   
             ⑵去重复名称,放到set集合中去
                 JAVA8新特性之中间操作二_第16张图片
                效果:
                   
            ⑶去重复名称,放到HashSet集合中去
                  JAVA8新特性之中间操作二_第17张图片
                   效果:
                   
            3:其他相关函数
                  JAVA8新特性之中间操作二_第18张图片
                 JAVA8新特性之中间操作二_第19张图片
                JAVA8新特性之中间操作二_第20张图片
                注意:多级分组,先按状态分,再按年龄分。
                JAVA8新特性之中间操作二_第21张图片
                JAVA8新特性之中间操作二_第22张图片

上一篇:JAVA8新特性之中间操作一

下一篇:JAVA8新特性之StreamAPI简单练习

文章目录

 

 

 

 

 

你可能感兴趣的:(java8)