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();
相关推荐
程序喵大人1 分钟前
【C++进阶】STL算法与函数对象 - 04 find、count和any_of把查询写成意图
开发语言·c++·算法
Livia要学习8 分钟前
Python装饰器
开发语言·python
一直都在57211 分钟前
LangChain4j精讲
开发语言·人工智能
吹什么轩25 分钟前
c++复习:c++11:lambda表达式
开发语言·c++
不会代码的小猴41 分钟前
标准模板库(STL)
开发语言·c++·笔记·算法
雾时之林2 小时前
python--字符串
开发语言·python
啊哈一半醒2 小时前
Go 语言 Context 全方位详解:原理、实战与避坑
开发语言·后端·golang
铅笔侠_小龙虾2 小时前
rust 学习(9):结构体
开发语言·学习·rust
此生决int2 小时前
深入理解C++系列(11)——stack、queue和priority_queue
开发语言·c++