Join us on the livestream at Android Dev Summit on 7-8 November 2018, starting at 10AM PDT!

LongSummaryStatistics

public class LongSummaryStatistics
extends Object implements LongConsumer, IntConsumer

java.lang.Object
   ↳ java.util.LongSummaryStatistics


A state object for collecting statistics such as count, min, max, sum, and average.

This class is designed to work with (though does not require) streams. For example, you can compute summary statistics on a stream of longs with:

 LongSummaryStatistics stats = longStream.collect(LongSummaryStatistics::new,
                                                  LongSummaryStatistics::accept,
                                                  LongSummaryStatistics::combine);
 

LongSummaryStatistics can be used as a Stream.collect(Collector) reduction} target for a stream. For example:

 LongSummaryStatistics stats = people.stream()
                                     .collect(Collectors.summarizingLong(Person::getAge));
This computes, in a single pass, the count of people, as well as the minimum, maximum, sum, and average of their ages.

Summary

Public constructors

LongSummaryStatistics()

Construct an empty instance with zero count, zero sum, Long.MAX_VALUE min, Long.MIN_VALUE max and zero average.

Public methods

void accept(int value)

Records a new int value into the summary information.

void accept(long value)

Records a new long value into the summary information.

void combine(LongSummaryStatistics other)

Combines the state of another LongSummaryStatistics into this one.

final double getAverage()

Returns the arithmetic mean of values recorded, or zero if no values have been recorded.

final long getCount()

Returns the count of values recorded.

final long getMax()

Returns the maximum value recorded, or Long.MIN_VALUE if no values have been recorded

final long getMin()

Returns the minimum value recorded, or Long.MAX_VALUE if no values have been recorded.

final long getSum()

Returns the sum of values recorded, or zero if no values have been recorded.

String toString()

Returns a string representation of the object.

Inherited methods

Public constructors

LongSummaryStatistics

added in API level 24
public LongSummaryStatistics ()

Construct an empty instance with zero count, zero sum, Long.MAX_VALUE min, Long.MIN_VALUE max and zero average.

Public methods

accept

added in API level 24
public void accept (int value)

Records a new int value into the summary information.

Parameters
value int: the input value

accept

added in API level 24
public void accept (long value)

Records a new long value into the summary information.

Parameters
value long: the input value

combine

added in API level 24
public void combine (LongSummaryStatistics other)

Combines the state of another LongSummaryStatistics into this one.

Parameters
other LongSummaryStatistics: another LongSummaryStatistics

Throws
NullPointerException if other is null

getAverage

added in API level 24
public final double getAverage ()

Returns the arithmetic mean of values recorded, or zero if no values have been recorded.

Returns
double The arithmetic mean of values, or zero if none

getCount

added in API level 24
public final long getCount ()

Returns the count of values recorded.

Returns
long the count of values

getMax

added in API level 24
public final long getMax ()

Returns the maximum value recorded, or Long.MIN_VALUE if no values have been recorded

Returns
long the maximum value, or Long.MIN_VALUE if none

getMin

added in API level 24
public final long getMin ()

Returns the minimum value recorded, or Long.MAX_VALUE if no values have been recorded.

Returns
long the minimum value, or Long.MAX_VALUE if none

getSum

added in API level 24
public final long getSum ()

Returns the sum of values recorded, or zero if no values have been recorded.

Returns
long the sum of values, or zero if none

toString

added in API level 24
public String toString ()

Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommended that all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object. In other words, this method returns a string equal to the value of:

 getClass().getName() + '@' + Integer.toHexString(hashCode())
 

Returns
String a string representation of the object.