Метод average
Метод average класса IntStream вычисляет
среднее арифметическое всех элементов потока.
Метод не принимает параметров. Возвращает результат
в виде OptionalDouble, поскольку поток может
быть пустым, и в этом случае среднее значение
не определено. Если поток содержит хотя бы один
элемент, в OptionalDouble будет находиться
вычисленное среднее значение, которое можно
получить через метод getAsDouble.
Синтаксис
IntStream.average()
Пример
Давайте вычислим среднее арифметическое чисел
от 1 до 5:
import java.util.stream.IntStream;
import java.util.OptionalDouble;
public class Main
{
public static void main(String[] args)
{
OptionalDouble res = IntStream.rangeClosed(1, 5).average();
System.out.println(res.getAsDouble());
}
}
Результат выполнения кода:
3.0
Пример
Давайте вычислим среднее арифметическое
произвольного набора чисел, переданных
через метод of:
import java.util.stream.IntStream;
import java.util.OptionalDouble;
public class Main
{
public static void main(String[] args)
{
OptionalDouble res = IntStream.of(10, 20, 30, 40).average();
System.out.println(res.getAsDouble());
}
}
Результат выполнения кода:
25.0
Пример
Если поток пустой, метод average вернёт
пустой OptionalDouble. Проверим это
через метод isEmpty:
import java.util.stream.IntStream;
import java.util.OptionalDouble;
public class Main
{
public static void main(String[] args)
{
OptionalDouble res = IntStream.empty().average();
System.out.println(res.isEmpty());
}
}
Результат выполнения кода:
true
Смотрите также
-
класс
IntStream,
который представляет поток целых чисел -
метод
sum,
который возвращает сумму элементов потока -
метод
rangeClosed,
который создаёт поток чисел в заданном диапазоне -
метод
of,
который создаёт поток из переданных чисел