品易云推流 关闭
文章 > java基础 > java Reduce的三种重载

java Reduce的三种重载

java

头像

小妮浅浅

2021-04-12 15:36:59663浏览 · 0收藏 · 0评论

1、一个参数的reduce

格式

Optional<T> reduce(BinaryOperator<T> accumulator)
T result = a[0];  
for (int i = 1; i < n; i++) {
result = accumulator.apply(result, a[i]);  
}
return result;

2、两个参数的reduce

格式

T reduce(T identity, BinaryOperator<T> accumulator)
T result = identity;
for (int i = 0; i < n; i++) {
result = accumulator.apply(result, a[i]);  
}
return result;

3、三个参数的Reduce

格式

<U> U reduce(U identity, BiFunction<U, ? super T, U> accumulator,BinaryOperator<U> combiner);
static class ScoreBean {
private String name; //学生姓名
private int score;   //分数,需要汇总该字段   
public ScoreBean(String name, int score) {
this.name = name;
this.score = score;
}
//get 和 set 方法省略
}

以上就是java Reduce的三种重载,希望对大家有所帮助。更多Java学习指路:Java基础

关注公众号

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图 底部广告图按钮