Класс 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​(long count, long min, long max, long sum)

Создает непустой экземпляр со значением count, min, max и sum.

Методы

Модификатор и тип Метод Описание
void accept​(int value)

Записывает новое int значение в статистическую информацию.

void accept​(long value)

Записывает новое long значение в статистическую информацию.

void combine​(LongSummaryStatistics other)

Объединяет состояние другого LongSummaryStatistics в этот.

double getAverage()

Возвращает среднее арифметическое записанных значений или ноль, если значения не были записаны.

long getCount()

Возвращает количество записанных значений.

long getMax()

Возвращает максимальное зарегистрированное значение или Long.MIN_VALUE, если значения не были записаны.

long getMin()

Возвращает минимальное зарегистрированное значение или Long.MAX_VALUE, если значения не были записаны.

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 >= 0
  • min <= 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, 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/LongSummaryStatistics.html

Spec-Zone .ru
спецификации, руководства, описания, API