Collectors.summingLong()
Collectors.summingLong()
Java 8
流的新类java.util.stream.Collectors
实现了java.util.stream.Collector
接口,同时又提供了大量的方法对流 (stream
) 的元素执行map
and
reduce
操作,或者统计操作。
Collectors.summingLong()
方法将流中的所有元素视为 Long
类型,并计算所有元素的总和 ( sum )
summingLongExample代码
@Test
public void summingIntExample() {List<Long> list = Arrays.asList(1L, 2L, 3L, 4L);Long max = list.stream().collect(Collectors.summingLong(i -> i));System.out.println(max);
}
summingLongExample结果
10
注意:
定义
List
中,也就是生成stream
流中的参数要进行类型声明,如果不明确类型,里面还要进行强制转换由于是
Long
,值的上限是很明显的,如果不控制Sum
和的大小,很容易出现值的溢出而导致负数,计算不正确@Test public void summingIntExample() {List<Long> list = Arrays.asList(8999999999999999999L, 8999999999999999999L, 8999999999999999999L);Long max = list.stream().collect(Collectors.summingLong(i -> i));System.out.println(max); } //结果为:8553255926290448381 结果明显不对
一点唠叨:
- 相对于
Collectors.averagingDouble()
来说,方法体只执行一次。 - 相对于
Collectors.averagingDouble()
来说,方法体做出了优化 - 相对于
Collectors.averagingDouble()
来说,这个没有坑 - ……
- 为什么这么提
Collectors.averagingDouble()
,最好看一下—> averagingDouble - 因为
Collectors.averagingDouble()
有坑,有坑,有坑
Collectors.summingLong()相关推荐
- 用流收集数据Collectors的用法介绍分组groupingBy、分区partitioningBy(一)
文章目录 一.收集器简介 二.归约和汇总 1.查找流中最大值和最小值Collectors.maxBy和,Collectors.minBy 2.汇总 3.连接字符串 4.广义归约汇总 三.分组 1.多级 ...
- collectors 求和_Java-Collectors常用的20个方法
相思相见知何日?此时此夜难为情. pexels-pixabay-267350.jpg 返回List集合: toList() 用于将元素累积到List集合中.它将创建一个新List集合(不会更改当前集合 ...
- Jdk1.8 Collectors类使用详解(实用干货)
Collectors类大家都并不陌生,从jdk1.8开始跟stream()流配合之后,写代码效率得到提升,源码里我们可以看到有很多的方法,比如groupingBy 和maxBy,这些都是干嘛的呢,这篇 ...
- 【Java 8 新特性】Java 8 Collectors示例
Java 8 Collectors示例 Collectors.averagingDouble Collectors.averagingInt Collectors.averagingLong Coll ...
- Java基础系列-Collector和Collectors
原创文章,转载请标注出处:<Java基础系列-Collector和Collectors> 一.概述 Collector是专门用来作为Stream的collect方法的参数的. public ...
- java8之stream流之Collector和Collectors
Collector Collector是专门用来作为Stream的collect方法的参数的. public interface Stream<T> extends BaseStream& ...
- Collector和Collectors
一.概述 Collector是专门用来作为Stream的collect方法的参数的. public interface Stream<T> extends BaseStream<T, ...
- Java8中Collectors的使用
前言: 基本类型的流没有这个用法 文章目录 averagingDouble,averagingInt,averagingLong collectingAndThen counting grouping ...
- Collectors详解
java8中Collectors的方法: 文章目录 toCollection toList() toSet() toMap joining mapping/flatMapping filtering ...
- Java8 Stream之Collectors
文章目录 toList.toSet toMap toConcurrentMap toCollection joining collectingAndThen groupingBy groupingBy ...
最新文章
- markdown编辑器 typora的安装和使用
- pip时read time out
- java输入月份求天数_java输入年份,月份,输出当月天数
- MFC 弹出对话框MessageBox
- android 怎么获取app 字体颜色,Android APP使用自定义字体实现方法
- 将markdown文本转换为微信文章格式的解决方案
- 新基建浪潮下,看边缘计算+5G如何乘风破浪
- JavaScript中的[]和{}
- mysql innodb_data_file_path_应急预案:专有云V3环境中RDS MySQL5.7实例修改innodb_temp_data_file_path参数的方法...
- 如何在android studio中调用mumu模拟器
- Scrapy实战:使用IDE工具运行爬虫
- 百度搜索关键词的使用方式
- 计算机快捷键ctrl记忆,PS篇:有效记忆快捷键
- 如何找课题的综述文献
- 疫情防控信息管理系统
- 【AAAI2021】Dual-Level Collaborative Transformer for Image Captioning
- 破译垃圾邮件“变脸”密码完美解决方案(转)
- 家校互联:蓝牙短信帮你搞定
- 开个水果店要投资多少钱,开水果店投资
- 国际标准 ISO 15008