Класс LongSummaryStatistics
- Все реализуемые интерфейсы:
-
IntConsumer,LongConsumer
public class LongSummaryStatistics extends Object implements LongConsumer, IntConsumer
Этот класс предназначен для работы с (хотя не требует) потоками. Например, вы можете вычислить сводную статистику по потоку длинных целых чисел со следующим кодом:
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
public String toString()
- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление объекта.
© 1993, 2023, 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/21/docs/api/java.base/java/util/LongSummaryStatistics.html