Java:List相关操作【求和、过滤、统计】(二)

Java8 Stream流对List集合的求和操作:

1、dobule
复制代码
Double sum = list.stream().reduce(0.0, (a, b) -> a + b);

Double sum = list.stream().reduce(0.0, Double::sum);
2、int
复制代码
int sum = list.stream().collect(Collectors.summingInt(Integer::intValue));

int sum = list.stream().mapToInt(Integer::intValue).sum();
3、BigDecimal
复制代码
BigDecimal sum = list.stream().reduce(BigDecimal.ZERO,BigDecimal::add);

// 过滤 null
BigDecimal sum = list.stream().filter(f-> f !=null).reduce(BigDecimal.ZERO,BigDecimal::add);
4、统计过滤后条数
复制代码
// 集合不等于'1'的条数
long count = list.stream().filter(f -> !f.equals("1")).count();
相关推荐
AI人工智能+电脑小能手几秒前
【大白话说Java面试题 第114题】【并发篇】第14题:说一下悲观锁的优点和缺点?
java·开发语言·面试
盒马盒马3 分钟前
Rust:Vec
开发语言·rust
devilnumber5 分钟前
Java 迭代器(Iterator)完全指南:从入门到实战
java·开发语言·迭代器
罗超驿6 分钟前
13.Java多线程进阶:手动实现线程池与定时器机制详解
开发语言·面试·javaee
弹简特10 分钟前
【Java项目-轻聊】10-实现会话管理模块
java·开发语言·数据库
人道领域12 分钟前
Java后端开发者转型AIAgent开发路线指南
java·开发语言
许彰午16 分钟前
35_Java设计模式之工厂模式
java·开发语言·设计模式
凡人叶枫18 分钟前
Effective C++ 条款32:确定你的 public 继承塑模出 is-a(是一种)关系
java·linux·开发语言·c++·嵌入式开发
码云骑士25 分钟前
18-生成器不只是省内存(上)-yield的状态机模型与帧暂停
c语言·开发语言·python
我喜欢就喜欢25 分钟前
C++ 连接 Ollama 本地大模型:从原生 HTTP 调用到高性能封装实践
开发语言·c++·http