当前位置:网站首页>list集合根据对象某属性求和,最大值等
list集合根据对象某属性求和,最大值等
2022-07-05 15:26:00 【小蚂蚁hjk】
先初始化集合并添加数据
//实体类
public class Student {
private int mathScoresInt; //数学成绩
private long mathScoresLong;//数学成绩
private float mathScoresFloat;//数学成绩
private double mathScoresDouble;//数学成绩
private BigDecimal mathScoresBigDecimal;//数学成绩
//构造方法忽略
//set、get 方法忽略
}
//测试数据 ( 不允许list中存在为空的值,不然会异常! )
List<Student> list = new ArrayList();
list.add(new Student(87, 87, 87.5f, 87.8, new BigDecimal(87)));
list.add(new Student(88, 88, 88.5f, 88.8, new BigDecimal(88)));
list.add(new Student(89, 89, 89.5f, 89.8, new BigDecimal(89)));
list.add(new Student(90, 90, 90.5f, 90.8, new BigDecimal(90)));
提示:以下计算为int 、long 、float 、double 、BigDecimal 等类型
一、根据List中的对象的某个属性,求和
double mathAverageInt = list.stream().mapToInt( Student::getMathScoresInt ).average().orElse(0d);
double mathAverageLong = list.stream().mapToLong( Student::getMathScoresLong ).average().orElse(0d);
double mathAverageDouble = list.stream().mapToDouble( Student::getMathScoresDouble ).average().orElse(0d);
二、根据List中的对象的某个属性,求平均值
double mathAverageInt = list.stream().mapToInt( Student::getMathScoresInt ).average().orElse(0d);
double mathAverageLong = list.stream().mapToLong( Student::getMathScoresLong ).average().orElse(0d);
double mathAverageDouble = list.stream().mapToDouble( Student::getMathScoresDouble ).average().orElse(0d);
三、根据List中的对象的某个属性,求最大值
int mathMaxInt = list.stream().mapToInt( Student::getMathScoresInt ).max().getAsInt(); //int类型
long mathMaxLong = list.stream().mapToLong( Student::getMathScoresLong ).max().getAsLong();
double mathMaxDouble = list.stream().mapToDouble( Student::getMathScoresDouble ).max().getAsDouble();
BigDecimal mathMaxBigDecimal = list.stream().map( Student::getMathScoresBigDecimal ).reduce(BigDecimal.ZERO, BigDecimal::max);
四、根据List中的对象的某个属性,求最小值
int mathMinInt = list.stream().mapToInt( Student::getMathScoresInt ).min().getAsInt();
long mathMinLong = list.stream().mapToLong( Student::getMathScoresLong ).min().getAsLong();
double mathMinDouble = list.stream().mapToDouble( Student::getMathScoresDouble ).min().getAsDouble();
BigDecimal mathMinBigDecimal = list.stream().map( Student::getMathScoresBigDecimal ).reduce(BigDecimal.ZERO, BigDecimal::min);
边栏推荐
- Noi / 1.5 37: mercenaries
- Definition of episodic and batch
- Data communication foundation - Ethernet port mirroring and link aggregation
- Ten billion massage machine blue ocean, difficult to be a giant
- Codasip adds verify safe startup function to risc-v processor series
- Basic JSON operations of MySQL 5.7
- Quick completion guide for manipulator (IX): forward kinematics analysis
- 【簡記】解决IDE golang 代碼飄紅報錯
- Redis distributed lock principle and its implementation with PHP (1)
- Data communication foundation - route republication
猜你喜欢

Data communication foundation smart_ Link_&_ Monitor_ Link

I spring and autumn blasting-2
![19.[STM32]HC_SR04超声波测距_定时器方式(OLED显示)](/img/fe/8f59db28823290da8e9280df06673d.jpg)
19.[STM32]HC_SR04超声波测距_定时器方式(OLED显示)

Redis' transaction mechanism
![21.[STM32]I2C协议弄不懂,深挖时序图带你编写底层驱动](/img/f4/2c935dd9933f5cd4324c29c41ab221.png)
21.[STM32]I2C协议弄不懂,深挖时序图带你编写底层驱动

Nine hours, nine people, nine doors problem solving Report

CSRF, XSS science popularization and defense
![[brief notes] solve the problem of IDE golang code red and error reporting](/img/b6/0b2ea06eb5fbe651ff9247b109fa15.png)
[brief notes] solve the problem of IDE golang code red and error reporting

vlunhub- BoredHackerBlog Moriarty Corp

Bugku alert
随机推荐
Maximum common subsequence
Why should we learn mathematical modeling?
16. [stm32] starting from the principle, I will show you the DS18B20 temperature sensor - four digit digital tube displays the temperature
vlunhub- BoredHackerBlog Moriarty Corp
Vulnhub-Moneybox
MySQL table field adjustment
MySQL表字段调整
Ionic Cordova project modification plug-in
I'm fat, huh
Arduino控制微小的六足3D打印机器人
Noi / 1.5 06: element maximum span value of integer sequence
Bugku's Ah Da
Good article inventory
18.[stm32] read the ROM of DS18B20 temperature sensor and realize multi-point temperature measurement
I spring and autumn blasting-1
Go language programming specification combing summary
Usage and usage instructions of JDBC connection pool
Analytic hierarchy process of mathematical modeling (including Matlab code)
MySQL giant pit: update updates should be judged with caution by affecting the number of rows!!!
Advanced level of static and extern