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累加求和_Java lambda 循环累加求和代码相关推荐

  1. java lamda循环条件_Java lambda 循环累加求和代码

    java 8 stream 提供了下面几种类型的求和 Stream::mapToInt Stream::mapToDouble Stream::mapToLong public void test() ...

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

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

  3. Java lambda 循环累加求和

    Java8 lambda 循环累加求和 接口流-Stream(),简单列举一下可以使用一下方法求和. 修饰符和类型 方法 描述 Stream map(Function<? super T,? e ...

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

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

  5. java collection 遍历_Java for循环对集合的遍历

    原标题:Java for循环对集合的遍历 Java集合类的使用可以说是无处不在,总的我们可以将之分为三大块,分别是从Collection接口延伸出的List.Set和以键值对形式作存储的Map类型集合 ...

  6. java foreach赋值_Java foreach循环使用详解[转]

    本文转自码农网 本文非常适合初学Java的程序员,主要是来了解一下Java中的几种for循环用法,分析得十分详细,一起来看看. J2SE 1.5提供了另一种形式的for循环.借助这种形式的for循环, ...

  7. java多个数求和_Java:多个数求和

    标签: 设计思想: 先定义int n,定义输入数的个数,输入一个新建的动态数组,输入数字存入动态数组中,函数转换并求和,最后输出. 程序流程图: 源程序代码: package com; import  ...

  8. java偶数求和_Java案例2:求和,求偶数和,水仙花数,珠穆朗玛峰

    1.求和 public class Sum { public static void main(String[] args) { //1-5的和 int sum = 0; for(int i=1;i& ...

  9. java数列求和_java中关于数列求和的计算方法

    题目描述: 输入n和a,求a+aa+aaa+-aa-a(n个a),如当n=3,a=2时,2+22+222的结果为246. java相关视频教程:java教学视频 输入: 包含两个整数,n和a,含义如上 ...

  10. java while语句_Java while循环

    Java while循环用于重复程序的一部分几次或重复执行一个代码块. 如果迭代次数不固定,建议使用while循环. 语法: while(condition){ //code to be execut ...

最新文章

  1. 获取inout框中未改变值的数据_数据分析10——数据分析的基本过程(02)
  2. 独占锁、共享锁、更新锁,乐观锁、悲观锁
  3. 初学者看看PHP explode() 函数 第6篇
  4. .gitignore更新后如何生效
  5. PackageManager(管理应用程序包)解析
  6. 【秘密】我经历过的币圈天使融资,了解一下
  7. 室内红外线防盗报警器matlab,红外防盗报警系统毕业设计论文.doc
  8. android dbm模式判断,手机信号强弱判断即【dBm/asu】知识普及
  9. VS2022 安装 .NET Framework 4.0的方法
  10. 【Android 】零基础到飞升 | ListView简单实用
  11. java 耗时_Java中计算程序运行耗时的方法对比
  12. 输入年份月份实现日历打印,C到C++过渡。
  13. 一文速学数模-降维模型(一)PCA(主成分分析法)原理以及应用+代码实现
  14. 异常:git did not exit cleanly (exit code 128)
  15. ubuntu占用空间清理
  16. C语言学习——fscanf()返回值
  17. 面向对象程序设计c++版董正言张聪课本课后习题答案第四章
  18. NVIDA CUDA显卡计算能力 GeForce RTX 2060 compute_capability
  19. 输入长方形的长和宽,求面积和周长
  20. C语言程序设计(第三版)何钦铭著 习题4-4

热门文章

  1. 推荐两个不错的前端资源的网站,有好的请继续添加,谢谢!
  2. 18、Windows API 图形用户界面(2)
  3. 图片没有.png或者jpg后缀能不能加载?
  4. Spark2.x详解
  5. sklearn10-使用总结
  6. jQuery中文文档
  7. 分布式事务处理学习报告
  8. Graham-Scan小总结——toj2317 Wall
  9. “霸榜CLUE” ,刚刚发布的业界最大中文NLP预训练模型有多强?
  10. 【预训练模型】预训练语言模型的前世今生之风起云涌