jdk8-》reduce操作

若如初见. 提交于 2020-01-07 08:34:54
什么是reduce操作
  聚合操作,中⽂意思是 “减少”
  根据⼀定的规则将Stream中的元素进⾏计算后返回⼀个唯⼀的值
  常⽤⽅法⼀:
    Optional<T> reduce(BinaryOperator<T> accumulator);
    accumulator 计算的累加器
    例⼦: 第⼀个元素相加和第⼆个元素相加,结果再和第三个元素相加,直到全部相加完成
    int value = Stream.of(1, 2, 3, 4, 5).reduce((item1, item2) -> item1+ item2).get();
 
  常⽤⽅法⼆:
    T reduce(T identity, BinaryOperator<T> accumulator);
    identity ⽤户提供⼀个循环计算的初始值
    accumulator 计算的累加器
    例⼦: 100作为初始值,然后和第⼀个元素相加,结果在和第⼆个元素相加,直到全部相加完成
    int value = Stream.of(1, 2, 3, 4,5).reduce(100, (sum, item) -> sum +item);
   
        
  练习 : 求最⼤值
  int value = Stream.of(1645, 234345, 32,44434,564534,435,34343542,212)
          .reduce( (item1, item2) -> item1 > item2 ? item1 : item2 ).get();
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!