java1.8新特性的Stream的Reduce

博客介绍了Java 1.8新特性中Stream的Reduce累加功能,提到该方法有重载方法,解释了BinaryOperator和identity的含义,指出此方法只能操作数组或集合的流对象,并给出了案例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

java1.8新特性的Stream的Reduce 累加,依次增加

该方法中有一个重载的方法

Optional<T> reduce(BinaryOperator<T> accumulator);

解释:

BinaryOperator:意思是说的是二进制的输入参数

T reduce(T identity, BinaryOperator<T> accumulator);

identity:意思说的是在执行累加的过程之后的结束的时候会进行一次增加的操作

java中的这个方法只可以是进行操作数组或者是集合的流对象
案例:

数组的演示:  
		 Integer [] ints=new Integer []{1,2,3,4,5};

 		 System.out.println( Stream.of(ints).reduce(Integer::sum).map(new Function<Integer, Integer>() {
      	 @Override
     	  public Integer apply(Integer integer) {
         	  return integer;
      	 }
  		 }
  		 )
  		 );
Optional[15]    集合的演示:
演示的是部门中的员工人员的名单集合的年龄的累加之后再+10
	 System.out.println(PersonList.getPeoples().stream().map(new Function<Person, Integer>() {
                    
                   @Override
                   public Integer apply(Person person) {
                         return person.getId();
                   }
               		}).reduce(10, new BinaryOperator<Integer>() {
                    @Override
                    public Integer apply(Integer integer, Integer integer2) {
                       return integer + integer2;
                    }
                })
         );
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小七会喷火

小七想要bi

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值