List集合求和(JDK1.8)(纯照搬别人,非原创)

第一种方式
int suma = list.stream().map(e -> e.getAge()).reduce(Integer::sum).get();//求和
System.out.println(suma);
int maxa = list.stream().map(e -> e.getAge()).reduce(Integer::max).get();//最大
System.out.println(maxa);
int mina = list.stream().map(e -> e.getAge()).reduce(Integer::min).get();//最小
System.out.println(mina);

 

int mathSumInt = list.stream().mapToInt( Student::getMathScoresInt ).sum(); //int类型
long mathSumLong = list.stream().mapToLong( Student::getMathScoresLong ).sum(); //long类型
double mathSumDouble = list.stream().mapToDouble( Student::getMathScoresDouble ).sum(); //double类型
BigDecimal mathSumBigDecimal = list.stream().map( Student::getMathScoresBigDecimal ).reduce(BigDecimal.ZERO, BigDecimal::add); //BigDecimal类型

 

第二种方式

double doublesum = list.stream().mapToDouble(Student::getAge).sum();//
System.out.println(doublesum);
int intmax = list.stream().mapToInt(Student::getAge).max().getAsInt();//最大
System.out.println(intmax);
int intmin = list.stream().mapToInt(Student::getAge).min().getAsInt();//最小
System.out.println(intmin);
double avg = list.stream().mapToDouble(Student::getAge).average().getAsDouble();//平均
System.out.println(avg);

 

posted @ 2024-06-29 13:10  篮球是圆的  阅读(5)  评论(0编辑  收藏  举报