Класс IntSummaryStatistics
- Все реализуемые интерфейсы:
IntConsumer
public class IntSummaryStatistics extends Object implements IntConsumer
Этот класс предназначен для работы с потоками (хотя это и не является обязательным требованием). Например, с помощью потока значений int можно вычислить сводную статистику:
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() |
Создает пустой экземпляр с нулевым количеством и нулевой суммой, Integer.MAX_VALUE минимальным значением, Integer.MIN_VALUE максимальным значением и нулевым средним значением. |
IntSummaryStatistics |
Создает непустой экземпляр с указанными count, min, max и sum. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
accept |
Записывает новое значение в сводную информацию |
void |
combine |
Объединяет состояние другого IntSummaryStatistics с текущим. |
final double |
getAverage() |
Возвращает среднее арифметическое записанных значений или ноль, если значения не записывались. |
final long |
getCount() |
Возвращает количество записанных значений. |
final int |
getMax() |
Возвращает максимальное записанное значение или Integer.MIN_VALUE, если значения не записывались. |
final int |
getMin() |
Возвращает минимальное записанное значение или Integer.MAX_VALUE, если значения не записывались. |
final long |
getSum() |
Возвращает сумму записанных значений или ноль, если значения не записывались. |
String |
toString() |
Возвращает непустое строковое представление этого объекта, подходящее для отладки. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создает и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект какому-либо другому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API подлежит удалению в будущей версии. Финализация устарела и подлежит удалению в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или прерывания. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или прерывания, либо до истечения заданного промежутка реального времени. |
Методы, объявленные в интерфейсе IntConsumer
andThen | Модификатор и тип | Метод | Описание |
|---|---|---|
default IntConsumer |
andThen |
Возвращает составной IntConsumer, который последовательно выполняет эту операцию, а затем операцию after. |
Подробное описание конструкторов
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
© 1993, 2025, 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.