Класс IntSummaryStatistics
- java.lang.Object
-
- java.util.IntSummaryStatistics
- Все реализованные интерфейсы:
IntConsumer
public class IntSummaryStatistics extends Object implements IntConsumer
Объект состояния для сбора статистики, такой как количество, минимум, максимум, сумма и среднее значение.
Этот класс предназначен для работы с (хотя не требует) потоками. Например, вы можете вычислить сводную статистику по потоку целых чисел следующим образом:
IntSummaryStatistics stats = intStream.collect(IntSummaryStatistics::new,
IntSummaryStatistics::accept,
IntSummaryStatistics::combine);
IntSummaryStatistics может использоваться в качестве целевого объекта редукции для потока. Например:
IntSummaryStatistics stats = people.stream()
.collect(Collectors.summarizingInt(Person::getDependents));
Этот вычисляет за один проход количество людей, а также минимальное, максимальное, суммарное и среднее количество их иждивенцев.
- Примечание по реализации:
- Эта реализация не потокобезопасна. Однако её можно безопасно использовать с
Collectors.summarizingInt()в параллельном потоке, потому что параллельная реализацияStream.collect()обеспечивает необходимое разбиение, изоляцию и объединение результатов для безопасного и эффективного выполнения в параллельном режиме.Эта реализация не проверяет переполнение суммы.
- С тех пор:
- 1.8
Конструкторы
| Конструктор | Описание |
|---|---|
IntSummaryStatistics() |
Создаёт пустой экземпляр с нулевым количеством, нулевой суммой, |
IntSummaryStatistics(long count,
int min,
int max,
long sum) |
Создаёт непустой экземпляр со значением указанного |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
accept(int value) |
Записывает новое значение в сводную информацию |
void |
combine(IntSummaryStatistics other) |
Объединяет состояние другого |
double |
getAverage() |
Возвращает среднее арифметическое записанных значений или ноль, если значения не были записаны. |
long |
getCount() |
Возвращает количество записанных значений. |
int |
getMax() |
Возвращает максимальное значение, записанное, или |
int |
getMin() |
Возвращает минимальное значение, записанное, или |
long |
getSum() |
Возвращает сумму записанных значений или ноль, если значения не были записаны. |
String |
toString() |
Возвращает непустую строку представления этого объекта, пригодную для отладки. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Методы, объявленные в интерфейсе java.util.function.IntConsumer
andThen
Конструкторы
IntSummaryStatistics
public IntSummaryStatistics()
Создаёт пустой экземпляр с нулевым количеством, нулевой суммой, Integer.MAX_VALUE минимальным значением, Integer.MIN_VALUE максимальным значением и нулевым средним.
IntSummaryStatistics
public IntSummaryStatistics(long count,
int min,
int max,
long sum)
throws IllegalArgumentException
Создаёт непустой экземпляр со значением указанного count, min, max, и sum.
Если count равно нулю, то остальные аргументы игнорируются, и создаётся пустой экземпляр.
Если аргументы несовместимы, то генерируется IllegalArgumentException исключение. Необходимые условия согласованности аргументов следующие:
count >= 0min <= max
- Примечание по API:
- Принудительная проверка корректности аргументов означает, что полученный набор записанных значений из экземпляра источника
IntSummaryStatisticsможет не быть допустимым набором аргументов для этого конструктора из-за переполнения арифметики записанного количества значений источника. Условия согласованности аргументов недостаточны для предотвращения создания внутренне несовместимого экземпляра. Пример такого состояния:count= 2,min= 1,max= 2, иsum= 0. - Параметры:
-
count- количество значений -
min- минимальное значение -
max- максимальное значение -
sum- сумма всех значений - Исключения:
-
IllegalArgumentException- если аргументы несовместимы - С тех пор:
- 10
Методы
accept
public void accept(int value)
Записывает новое значение в сводную информацию
- Определено в:
-
acceptв интерфейсеIntConsumer - Параметры:
-
value- входное значение
combine
public void combine(IntSummaryStatistics other)
Объединяет состояние другого IntSummaryStatistics в этот.
- Параметры:
-
other- другойIntSummaryStatistics - Исключения:
-
NullPointerException- еслиotherравно null
getCount
public final long getCount()
Возвращает количество записанных значений.
- Возвращает:
- количество значений
getSum
public final long getSum()
Возвращает сумму записанных значений или ноль, если значения не были записаны.
- Возвращает:
- сумма значений или ноль, если нет
getMin
public final int getMin()
Возвращает минимальное значение, записанное, или Integer.MAX_VALUE если значения не были записаны.
- Возвращает:
- минимальное значение или
Integer.MAX_VALUEесли нет
getMax
public final int getMax()
Возвращает максимальное значение, записанное, или Integer.MIN_VALUE если значения не были записаны.
- Возвращает:
- максимальное значение или
Integer.MIN_VALUEесли нет
getAverage
public final double getAverage()
Возвращает среднее арифметическое записанных значений или ноль, если значения не были записаны.
- Возвращает:
- среднее арифметическое значений или ноль, если нет
toString
public String toString()
Возвращает непустую строку представления этого объекта, пригодную для отладки. Точный формат представления не определён и может отличаться между реализациями и версиями.
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/util/IntSummaryStatistics.html