- java.lang.Object
-
- java.util.LongSummaryStatistics
-
- All Implemented Interfaces:
-
IntConsumer,LongConsumer
public class LongSummaryStatistics extends Object implements LongConsumer, IntConsumer
统计数据的收集状态,如count,min,max,sum和average。这个课程旨在与(但不需要) streams一起工作 。 例如,您可以使用以下方式计算长流的汇总统计信息:
LongSummaryStatistics stats = longStream.collect(LongSummaryStatistics::new, LongSummaryStatistics::accept, LongSummaryStatistics::combine);LongSummaryStatistics可用作reduction目标为stream 。 例如:这个计算单次通过了人数,以及年龄的最小值,最大值,总和和平均值。LongSummaryStatistics stats = people.stream() .collect(Collectors.summarizingLong(Person::getAge));- Implementation Note:
-
这个实现不是线程安全的。
但是,平行流中使用
Collectors.summarizingLong()是安全的,因为Stream.collect()的并行实现为安全和高效的并行执行提供了必要的分区,隔离和结果合并。此实现不检查总和的溢出。
- 从以下版本开始:
- 1.8
-
-
构造方法摘要
构造方法 Constructor 描述 LongSummaryStatistics()使用零计数,零和,Long.MAX_VALUE分钟,Long.MIN_VALUE最大和零平均值构造空实例。
-
方法摘要
所有方法 接口方法 具体的方法 Modifier and Type 方法 描述 voidaccept(int value)在摘要信息中记录新的int值。voidaccept(long value)在摘要信息中记录一个新的long值。voidcombine(LongSummaryStatistics other)将另一个LongSummaryStatistics的状态合并到这一个中。doublegetAverage()返回记录的值的算术平均值,如果没有记录值,则返回零。longgetCount()返回记录的值的计数。longgetMax()返回记录的最大值,如果没有记录值,则返回Long.MIN_VALUElonggetMin()返回记录的最小值,如果没有记录值,则返回Long.MAX_VALUE。longgetSum()返回记录的值的总和,如果没有记录值,则返回零。StringtoString()返回适用于调试的此对象的非空字符串表示形式。-
Methods inherited from interface java.util.function.IntConsumer
andThen
-
Methods inherited from interface java.util.function.LongConsumer
andThen
-
-
-
-
方法详细信息
-
accept
public void accept(int value)
在摘要信息中记录一个新的int值。- Specified by:
-
accept在接口IntConsumer - 参数
-
value- 输入值
-
accept
public void accept(long value)
在摘要信息中记录一个新的long值。- Specified by:
-
accept在接口LongConsumer - 参数
-
value- 输入值
-
combine
public void combine(LongSummaryStatistics other)
将另一个LongSummaryStatistics的状态合并到一个。- 参数
-
other- 另一个LongSummaryStatistics - 异常
-
NullPointerException- 如果other为空
-
getCount
public final long getCount()
返回记录的值的计数。- 结果
- 数值计数
-
getSum
public final long getSum()
返回记录的值的总和,如果没有记录值,则返回零。- 结果
- 值的总和,否则为零
-
getMin
public final long getMin()
返回记录的最小值,如果没有记录值,则返回Long.MAX_VALUE。- 结果
-
最小值,如果没有,
Long.MAX_VALUE
-
getMax
public final long getMax()
返回记录的最大值,如果没有记录值,则返回Long.MIN_VALUE- 结果
-
最大值,或
Long.MIN_VALUE如果没有
-
getAverage
public final double getAverage()
返回记录的值的算术平均值,如果没有记录值,则返回零。- 结果
- 值的算术平均值,如果没有值则为零
-
-