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) {@linkplain java.util.stream streams}. For example, you can compute summary statistics on a stream of ints with:
IntSummaryStatistics stats = intStream.collect(IntSummaryStatistics::new,
IntSummaryStatistics::accept,
IntSummaryStatistics::combine);
IntSummaryStatistics
can be used as a
{@linkplain java.util.stream.Stream#collect(Collector) reduction}
target for a {@linkplain java.util.stream.Stream stream}. For example:
IntSummaryStatistics stats = people.stream()
.collect(Collectors.summarizingInt(Person::getDependents));
Public Constructor Summary
IntSummaryStatistics()
Construct an empty instance with zero count, zero sum,
Integer.MAX_VALUE min, Integer.MIN_VALUE max and zero
average. |
Public Method Summary
void |
accept(int value)
Records a new value into the summary information
|
void |
combine(IntSummaryStatistics other)
Combines the state of another
IntSummaryStatistics 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 int |
getMax()
Returns the maximum value recorded, or
Integer.MIN_VALUE if no
values have been recorded. |
final int |
getMin()
Returns the minimum value recorded, or
Integer.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 containing a concise, human-readable description of this
object.
|
Inherited Method Summary
Public Constructors
public IntSummaryStatistics ()
Construct an empty instance with zero count, zero sum,
Integer.MAX_VALUE
min, Integer.MIN_VALUE
max and zero
average.
Public Methods
public void accept (int value)
Records a new value into the summary information
Parameters
value | the input value |
---|
public void combine (IntSummaryStatistics other)
Combines the state of another IntSummaryStatistics
into this one.
Parameters
other | another IntSummaryStatistics |
---|
Throws
NullPointerException | if other is null
|
---|
public final double getAverage ()
Returns the arithmetic mean of values recorded, or zero if no values have been recorded.
Returns
- the arithmetic mean of values, or zero if none
public final long getCount ()
Returns the count of values recorded.
Returns
- the count of values
public final int getMax ()
Returns the maximum value recorded, or Integer.MIN_VALUE
if no
values have been recorded.
Returns
- the maximum value, or
Integer.MIN_VALUE
if none
public final int getMin ()
Returns the minimum value recorded, or Integer.MAX_VALUE
if no
values have been recorded.
Returns
- the minimum value, or
Integer.MAX_VALUE
if none
public final long getSum ()
Returns the sum of values recorded, or zero if no values have been recorded.
Returns
- the sum of values, or zero if none
public String toString ()
Returns a string containing a concise, human-readable description of this object. Subclasses are encouraged to override this method and provide an implementation that takes into account the object's type and data. The default implementation is equivalent to the following expression:
getClass().getName() + '@' + Integer.toHexString(hashCode())
See Writing a useful
toString
method
if you intend implementing your own toString
method.
Returns
- a printable representation of this object.