Класс LongSummaryStatistics
- Все реализованные интерфейсы:
-
IntConsumer,LongConsumer
public class LongSummaryStatistics extends Object implements LongConsumer, IntConsumer
Этот класс разработан для работы с (хотя не требует) потоками. Например, вы можете вычислить сводную статистику по потоку значений типа long следующим образом:
LongSummaryStatistics stats = longStream.collect(LongSummaryStatistics::new,
LongSummaryStatistics::accept,
LongSummaryStatistics::combine);
LongSummaryStatistics может использоваться в качестве цели сведения для потока. Например:
LongSummaryStatistics stats = people.stream()
.collect(Collectors.summarizingLong(Person::getAge));
Это вычисляет в одном проходе количество людей, а также минимальный, максимальный, суммарный и средний возраст. - Примечание к реализации:
- Данная реализация не является потокобезопасной. Однако, она безопасна для использования с
Collectors.summarizingLong()в параллельном потоке, так как параллельная реализацияStream.collect()обеспечивает необходимую разбивку, изоляцию и объединение результатов для безопасного и эффективного параллельного выполнения.Данная реализация не проверяет переполнение количества или суммы.
- С тех пор:
- 1.8
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
LongSummaryStatistics() |
Создаёт пустой экземпляр с нулевым количеством, нулевой суммой, Long.MAX_VALUE минимальным значением, Long.MIN_VALUE максимальным значением и нулевым средним значением. |
LongSummaryStatistics |
Создаёт непустой экземпляр со значением count, min, max и sum. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
accept |
Записывает новое значение int в сводную информацию. |
void |
accept |
Записывает новое значение long в сводную информацию. |
void |
combine |
Объединяет состояние другого LongSummaryStatistics в текущий. |
final double |
getAverage() |
Возвращает среднее арифметическое записанных значений, или ноль, если значения не были записаны. |
final long |
getCount() |
Возвращает количество записанных значений. |
final long |
getMax() |
Возвращает максимальное записанное значение, или Long.MIN_VALUE, если значения не были записаны. |
final long |
getMin() |
Возвращает минимальное записанное значение, или Long.MAX_VALUE, если значения не были записаны. |
final long |
getSum() |
Возвращает сумму записанных значений, или ноль, если значения не были записаны. |
String |
toString() |
Возвращает строковое представление этого объекта, подходящее для отладки. |
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Методы, объявленные в интерфейсе java.util.function.IntConsumer
andThen
Методы, объявленные в интерфейсе java.util.function.LongConsumer
andThen
Подробное описание конструкторов
LongSummaryStatistics
public LongSummaryStatistics()
Long.MAX_VALUE минимальным значением, Long.MIN_VALUE максимальным значением и нулевым средним значением.LongSummaryStatistics
public LongSummaryStatistics(long count, long min, long max, long sum) throws IllegalArgumentException
count, min, max и sum. Если count равно нулю, то остальные аргументы игнорируются, и создаётся пустой экземпляр.
Если аргументы не согласованы, выбрасывается IllegalArgumentException. Необходимые согласованные условия для аргументов:
count >= 0min <= max
- Примеч. по API:
- Принудительное соблюдение правильности аргументов означает, что полученный набор записанных значений из экземпляра источника
LongSummaryStatisticsможет не быть законным набором аргументов для этого конструктора из-за переполнения при вычислении количества значений в источнике. Условия согласованности аргументов недостаточно для предотвращения создания внутренне несогласованного экземпляра. Пример такого состояния – экземпляр со значениями:count= 2,min= 1,max= 2 иsum= 0. - Параметры:
-
count- количество значений -
min- минимальное значение -
max- максимальное значение -
sum- сумма всех значений - Исключения:
-
IllegalArgumentException- если аргументы не согласованы - С тех пор:
- 10
Подробное описание методов
accept
public void accept(int value)
int в сводную информацию.- Указано в:
-
acceptв интерфейсеIntConsumer - Параметры:
-
value- вводное значение
accept
public void accept(long value)
long в сводную информацию.- Указано в:
-
acceptв интерфейсеLongConsumer - Параметры:
-
value- вводное значение
combine
public void combine(LongSummaryStatistics other)
LongSummaryStatistics в текущий.- Параметры:
-
other- другоеLongSummaryStatistics - Исключения:
-
NullPointerException- еслиotherравно null
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()
- Возвращает:
- Среднее арифметическое значений, или ноль, если значений нет
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.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/util/LongSummaryStatistics.html