IntStream.average()
Вычисляет среднее арифметическое чисел потока.
Доступно с: Java 8
Синтаксис
OptionalDouble average()Возвращаемое значение
OptionalDoubleСреднее значение или пустой результат для пустого потока.
Примеры
Среднее и обработка пустого потока:
void main() {
IO.println(IntStream.of(4, 5, 9).average().getAsDouble());
IO.println(IntStream.empty().average().orElse(0));
var stats = IntStream.of(4, 5, 9).summaryStatistics();
IO.println(stats.getMin() + " " + stats.getMax() + " " + stats.getAverage());
}Результат:
6.0
0.0
4 9 6.0Примечания
Результат — OptionalDouble: у пустого потока среднего нет. Если нужны сразу минимум, максимум, сумма и среднее, вызовите summaryStatistics() — данные будут пройдены один раз.
См. также
- IntStream.sum() — Складывает все числа потока.
- Collectors.averagingDouble() — Сборщик, который вычисляет среднее значение числового поля.
- Stream.mapToInt() — Превращает поток объектов в поток чисел `int`.
Вопросы и ответы по теме
В учебнике
- Операции над потоками — Основные операции Stream API — filter, map, sorted, distinct, limit, skip, count, reduce, anyMatch, findFirst и числовые потоки.