// 准备数据List<User> userList = new ArrayList<User>();for (int i = 0; i < 100; i++) {User user = new User(i,new BigDecimal(i+"."+i));userList.add(user);}// for versionBigDecimal result1 = BigDecimal.ZERO;for (User user : userList) {result1 = result1.add(user.getMoney());}System.out.println("result1 = "+result1);// java 8 stream versionBigDecimal result2 = userList.stream()// 将user对象的mongey取出来map为Bigdecimal.map(User::getMoney)// 使用reduce聚合函数,实现累加器.reduce(BigDecimal.ZERO,BigDecimal::add);System.out.println("result2 = "+result2);}

map是一个对于流对象的中间操作,通过给定的方法,它能够把流对象中的每一个元素对应到另外一个对象上,这里将user对象的money取出来map为Bigdecimal

reduce是一个终结操作,它能够通过某一个方法,对元素进行削减操作。该操作的结果会放在一个Optional变量里返回。可以利用它来实现很多聚合方法比如count,max,min等。
这里利用了reduce的第二个方法重载
T reduce(T identity, BinaryOperator accumulator);
第一个参数是我们给出的初值,第二个参数是累加器,可以自己用实现接口完成想要的操作,这里使用Bigdecimal的add方法
最后reduce会返回计算后的结果

Stream 计算总和相关推荐

  1. SAS 中计算总和或者计算总数的方法

    SAS 在数据步中可以使用 retain 来计算总和或者个数,简单介绍一下,主要介绍使用 sql 语句获得总和或者个数. (1)使用 retain 来计算,一般是先使用 retain 声明变量,然后直 ...

  2. 【SQL开发实战技巧】系列(十五):查找最值所在行数据信息及快速计算总和百之max/min() keep() over()、fisrt_value、last_value、ratio_to_report

    系列文章目录 [SQL开发实战技巧]系列(一):关于SQL不得不说的那些事 [SQL开发实战技巧]系列(二):简单单表查询 [SQL开发实战技巧]系列(三):SQL排序的那些事 [SQL开发实战技巧] ...

  3. php实现excel计算,用PHPExcel计算总和

    我是 PHPExcel的新手,我需要你的帮助 – 计算总和时,我在PHPExcel中的setCellValue有问题.它给我总是0. 这是我的代码: $objPHPExcel = PHPExcel_I ...

  4. thinkphp mysql sum_thinkphp多表联合查询计算总和sum

    原标题:TP5 数据查询一对多计算总和SUM TP5查询语句 (1)查询语句 Db::table('student') ->alias('st') ->join(['fraction' = ...

  5. stream 计算一个List对象中某个字段总和

    int total = list.stream().mapToInt(User::getAge).sum();

  6. 空间连接时计算总和_【数据技术】城市功能混合程度计算

    01混合度计算◐  1.1 概念与计算 熵:信息论中度量随机事件在某项实验中的不确定程度的概念. 计算公式: H(X)表示随机变量X的熵; Pi为X取Xi的概率 .显然 , 熵值越大 , 不肯定性越大 ...

  7. cad多线段长度计算总和_没想到啊,我平时用的CAD多段线有这么多学问

    很多人都说,CAD用多段线来代替直线绘图会比较方便,因为多段线除了常规直线功能之外,也能画弧线,更重要的是,一次命令执行的线条为一个整体,操作方便. 难道多段线PL仅仅只有这明面上的实力吗? 当然不是 ...

  8. 计算机一级 文档计算总和,江苏省计算机一级选择题总和.docx

    1.编写软件程序首先要考虑的两个重要方面是_B___. A.需求分析和数据结构 C.软件结构和用户要求 B.数据结构和算法 D.数据类型和人员管理 2.虚拟存储系统能够得到一个容量很大的虚拟空间,但其 ...

  9. 计算机函数总和怎么操作,Excel 2007:巧用函数公式计算总和

    在Excel 中一次只能对选定的数据列进行一种方式的汇总,要么求和,要么平均值,二者不能兼顾.也可以对目标数据进行两次分类汇总,但是两个汇总结果又分布在不同的数据行,不便于统计输出.像下面笔者的同事有 ...

最新文章

  1. 三分钟学会css3中的flexbox布局
  2. mySql中使用命令行建表基本操作
  3. 教程:测试期间的日志记录
  4. Python查看、修改pip install 默认使用的pip库
  5. 老是原罪?技术圈为何不待见大龄企业家
  6. 多智能体自主协同技术
  7. 系统分析与设计期末复习题目
  8. 《阴阳师·4蟾蜍》原作:梦枕貘
  9. 文件分割与合并(Java)
  10. JAVA解析Excel工具EasyExcel(alibaba)
  11. 300以内的蓝牙耳机哪款好?半入耳蓝牙耳机南卡和漫步者测评
  12. 3dMAX对电脑配置是怎么样的?
  13. Practical Full Resolution Learned Lossless Image Compression
  14. C语言——经典200道实例【基础例题100道——进阶例题100道】
  15. 爆款短视频自媒体的8大黄金法则,学会了,就离爆款不远了
  16. java 构造方法 调用 构造方法_Java中构造方法调用构造方法??
  17. SQL server安装时:“以前的某个程序安装已在安装计算机上创建挂起的文件操作。运行安装程序之前必须重新启动计算机”错误
  18. AD(altium designer)15原理图与PCB设计教程(九)——印制电路板的的后续制作
  19. w ndows7如果连接宽带,Win7系统如何创建无线网络连接及宽带连接
  20. 【洛谷】P1957 口算练习题【C++】

热门文章

  1. Goolg Maps android API V2版详解(二)新地图get~
  2. Windows 8/8.1下 PL2303 HXA 驱动安装
  3. ?php get_sidebar(); ?,常用函数-get_sidebar()
  4. 基于Unity3D的自动寻路车辆模拟
  5. 《游戏脚本的设计与开发》-(RPG部分)3.1 RPG地图到底怎么做?
  6. Java第四天笔记02——方法的定义及调用
  7. ASP.NET - 查询邮件及邮件内容
  8. SAP 邮件发送记录查询
  9. 解决shiro重定向URL中出现sessionID的情况localhost:8080/toLogin;jsessionid=D5C1EE61B97EE2D7098F58A837B82BD4
  10. 电商常用功能模块的数据库设计