java 8 stream 提供了下面几种类型的求和

Stream::mapToInt

Stream::mapToDouble

Stream::mapToLong

public void test() {

List people = new ArrayList<>();

people.add(new Person("zhangsan",20));

people.add(new Person("lisi", 26));

people.add(new Person("wangwu",35));

int sum = people.stream()

.mapToInt(p -> p.getAge())

.sum();

System.out.println("Total of ages " + sum);

}

但是没有BigDecimal类型,可以使用下面方法实现

public void test() {

List list = new ArrayList<>();

list.add(new Person("zhangsan", 20, new BigDecimal(10.5)));

list.add(new Person("lisi", 26, new BigDecimal(22.2)));

list.add(new Person("wangwu", 35, new BigDecimal(15.54)));

BigDecimal amounts = list.stream().map(item -> item.getAmount())

.reduce(BigDecimal.ZERO, BigDecimal::add);

amounts = amounts.setScale(1, BigDecimal.ROUND_DOWN);

System.out.println("Total of amounts:" + amounts);

// 或者

BigDecimal sum = list

.stream()

.map(Person::getAmount)

.reduce(BigDecimal::add)

.get();

sum = sum.setScale(1, BigDecimal.ROUND_DOWN);

System.out.println("Total of sums: " + sum);

}

补充知识:Java算法——求1到100累加的和,3种循环

1、for循环

int sum = 0;

for (int i = 1; i <= 100; i++) {

sum += i;

}

System.out.println("1到100累加的和为:" + sum);

2、while循环

int sum = 0;

int i = 1;

while (i <= 100) {

sum += i;

i++;

}

System.out.println("1到100累加的和为:" + sum);

3、do...while循环

int sum = 0;

int i = 1;

do {

sum += i;

i++;

} while (i <= 100);

System.out.println("1到100累加的和为:" + sum);

以上这篇Java lambda 循环累加求和代码就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持聚米学院。

java lamda循环条件_Java lambda 循环累加求和代码相关推荐

  1. java for循环 条件_Java for循环(十三)

    for循环 for语句是应用最广泛.功能最强的一种循环语句.大部分情况下,for循环可以代替while循环.do while循环,这3种循环可以相互替换~ for语句是一种在程序执行前就要先判断条件表 ...

  2. java lambda 累加_Java lambda 循环累加求和代码

    Java lambda 循环累加求和代码,给大家,希望能,可以使用,这篇,小编 Java lambda 循环累加求和代码 易采站长站,站长之家为您整理了Java lambda 循环累加求和代码的相关内 ...

  3. java循环之后求和代码,Java lambda 循环累加求和代码

    java 8 sthttp://www.cppcns.comream 提供了下面几种类型的求和 Stream::mapToInt Stream::mapToDouble Stream::mapToLo ...

  4. python分组符合条件相加_python实现分组求和与分组累加求和代码

    我就废话不多说了,大家还是直接看代码吧! # -*- encoding=utf-8 -*- import pandas as pd data=['abc','abc','abc','asc','ase ...

  5. java的使用条件_Java使用条件语句和循环结构确定控制流

    与任何程序设计语言一样,Java使用条件语句和循环结构确定控制流.本文将简单讲解条件.循环和switch. 一.块作用域 块(block),即复合语句.是指由一对大括号括起来的若干条简单的Java语句 ...

  6. java for 循环中if判断只进入第一个_「每天三分钟跟我学Java」之条件语句和循环结构...

    在实际项目中,条件判断和循环结构都是使用频率非常高的知识点,本节我们来看下这两部分. 一.条件语句 条件语句是对一个布尔型表达式进行判断,true时执行一个分支的操作,false时执行另一个分支的操作 ...

  7. java do while用法_Java do-while循环

    Java do-while循环用于多次迭代程序的一部分或重复多次执行一个代码块. 如果迭代次数不固定,必须至少执行一次循环,建议使用do-while循环. Java do-while循环至少执行一次, ...

  8. java基础语法——条件判断与循环语句

    目录 一.流程控制语句 流程控制语句分类 二.顺序结构 顺序结构概述 顺序结构图 三.选择结构 选择结构概述 选择结构(if语句1) 选择执行图1 选择结构(if语句2) 选择执行图2 选择结构(if ...

  9. java for循环 标记_Java for循环

    Java for循环用于多次迭代程序的一部分,或者多次执行同一个代码块.如果迭代次数是固定的,建议使用for循环.java中有三种类型的for循环分别是简单for循环,for-each(增强型for循 ...

最新文章

  1. 将信息系学生的计算机文化学,计算机学生论文,关于基于职业岗位的计算机文化基础课教学相关参考文献资料-免费论文范文...
  2. display: none;、visibility: hidden、opacity=0区别总结
  3. 课程及其编码字典python_【课程15】Python字典
  4. 治标更治本,如何从根源防护DDoS***
  5. 【框架学习分享】HttpRunner
  6. ftp服务器收集文件,ftp服务器收集文件
  7. Jquery Highcharts 参数配置说明
  8. 【实验1】——脉冲测距
  9. 【JavaScript 封装库】BETA 1.0 测试版发布!
  10. java删除非空文件夹
  11. Fgui切割图集为散图
  12. MATLAB人体行为检测与识别
  13. 绘画板绘-小白画线不稳怎么办?
  14. Windows10设置开机自启动文件(或删除)
  15. CSDN专访左程云,算法之道
  16. Android 应用程序未安装问题
  17. Web初学-2022.10.28-11.5
  18. plm服务器 硬件性能,如何对PLM系统进行性能诊断与调优?
  19. 在虚拟机中通过U盘GHOST 操作系统
  20. (Matlab实现)蚂蚁狮子优化算法在电力系统中的应用

热门文章

  1. VS2017 Intelligense C++ 设置的几个重点
  2. U3D 动态创建Prefab的多个实例
  3. RHEL5.4 iptables 配置详解(图)
  4. 记忆化搜素,和递推法
  5. 还是树形dp 也可以用最短路来写--NOJ679 贪婪的商店
  6. git 从入门到精通
  7. 博客园今天将排名计算错误了
  8. Java语言的替代品:JVM的新编程语言开源
  9. 云呼叫中心系统: 引领企业通信产业下一春
  10. 登陆页老是提示验证码错误,validate验证控件IE下用remote方法明明返回true 但是还是报错,提示验证码错误...