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();
相关推荐
野犬寒鸦2 分钟前
JVM垃圾回收机制面试常问问题及详解
java·服务器·开发语言·jvm·后端·算法·面试
本喵是FW12 分钟前
C语言手记3
c语言·开发语言
一杯美式 no sugar19 分钟前
类和对象(中)
开发语言·c++
qq_4160187221 分钟前
实时数据可视化库
开发语言·c++·算法
2401_8732046535 分钟前
C++中的策略模式进阶
开发语言·c++·算法
xushichao198940 分钟前
C++中的职责链模式实战
开发语言·c++·算法
清风徐来QCQ1 小时前
js中的模板字符串
开发语言·前端·javascript
2301_818419011 小时前
C++中的协程编程
开发语言·c++·算法
add45a1 小时前
C++中的工厂方法模式
开发语言·c++·算法
java1234_小锋1 小时前
Java高频面试题:Spring-AOP通知和执行顺序?
java·开发语言·spring