- Найти сумму и среднее значение в массиве Java
- 1. введение
- 2. Найдите сумму элементов массива
- 2.1. Сумма с использованием цикла For
- 2.2. Суммирование с помощью API Java Stream
- 3. Найдите среднее значение в массиве Java
- 3.1. Среднее значение без API потока
- 3.2. Среднее значение с использованием API Java Stream
- 4. Заключение
- Читайте ещё по теме:
- Найдите сумму и среднее значение в массиве Java
- 2. Найдите сумму элементов массива
- 2.1. Сумма с использованием цикла for
- 2.2. Сумма с Java Stream API
- 3. Найдите среднее значение в массиве Java
- 3.1. В среднем без Stream API
- 3.2. Среднее с использованием Java Stream API
- 4. Вывод
- Как найти среднее значение в массиве java
- Как найти среднее арифметическое в массиве java
Найти сумму и среднее значение в массиве Java
В этом кратком руководстве мы рассмотрим, как мы можем вычислить сумму и среднее значение в массиве, используя как стандартные циклы Java, так и потоковый API.
1. введение
В этом кратком руководстве мы рассмотрим, как мы можем вычислить сумму и среднее значение в массиве, используя как стандартные циклы Java, так и API Stream .
2. Найдите сумму элементов массива
2.1. Сумма с использованием цикла For
Чтобы найти сумму всех элементов в массиве, мы можем просто перебрать массив и добавить каждый элемент в sum аккумулирующую | переменную.
Это очень просто начинается с sum 0 и добавляет каждый элемент в массив по мере продвижения:
public static int findSumWithoutUsingStream(int[] array) < int sum = 0; for (int value : array) < sum += value; >return sum; >
2.2. Суммирование с помощью API Java Stream
Мы можем использовать API потока для достижения того же результата:
public static int findSumUsingStream(int[] array)
Важно знать, что метод sum() поддерживает только потоки примитивного типа .
Если мы хотим использовать поток на упакованном целочисленном значении, мы должны сначала преобразовать поток в IntStream с помощью метода mapToInt .
После этого мы можем применить метод sum() к нашему недавно преобразованному IntStream :
public static int findSumUsingStream(Integer[] array)
Вы можете прочитать гораздо больше о потоковом API здесь .
3. Найдите среднее значение в массиве Java
3.1. Среднее значение без API потока
Как только мы узнаем, как вычислить сумму элементов массива, найти среднее значение довольно легко – как Среднее значение элементов/Количество элементов :
public static double findAverageWithoutUsingStream(int[] array) < int sum = findSumWithoutUsingStream(array); return (double) sum / array.length; >
- Деление int на другое int возвращает результат int . Чтобы получить точное среднее значение, мы сначала приведемsumкdouble.
- Java Array имеет поле length , в котором хранится количество элементов в массиве.
3.2. Среднее значение с использованием API Java Stream
public static double findAverageUsingStream(int[] array)
IntStream.average() возвращает Необязательный Double , который может не содержать значения и требует специальной обработки.
Подробнее о Options в этой статье и о Необязательном классе Double в документации Java 8 .
4. Заключение
В этой статье мы рассмотрели, как найти сумму/среднее значение элементов массива int .
Читайте ещё по теме:
Найдите сумму и среднее значение в массиве Java
В этом кратком руководстве мы расскажем, как вычислить сумму и среднее значение в массиве, используя как стандартные циклы Java, так и Stream API.
2. Найдите сумму элементов массива
2.1. Сумма с использованием цикла for
Чтобы найти сумму всех элементов в массиве, мы можем просто выполнить итерацию массива и добавить каждый элемент в переменную , накапливающую сумму . «
Это очень просто начинается с суммы 0 и добавляет каждый элемент в массив по мере продвижения:
public static int findSumWithoutUsingStream(int[] array) int sum = 0; for (int value : array) sum += value; > return sum; >
2.2. Сумма с Java Stream API
Мы можем использовать Stream API для достижения того же результата:
public static int findSumUsingStream(int[] array) return Arrays.stream(array).sum(); >
Важно знать, что метод sum() поддерживает только потоки примитивного типа .
Если мы хотим использовать поток для упакованного целочисленного значения, мы должны сначала преобразовать поток в IntStream с помощью метода mapToInt .
После этого мы можем применить метод sum() к нашему только что преобразованному IntStream :
public static int findSumUsingStream(Integer[] array) return Arrays.stream(array) .mapToInt(Integer::intValue) .sum(); >
Вы можете прочитать намного больше о Stream API здесь .
3. Найдите среднее значение в массиве Java
3.1. В среднем без Stream API
Как только мы узнаем, как вычислить сумму элементов массива, найти среднее значение довольно легко — так как Среднее = сумма элементов / количество элементов :
public static double findAverageWithoutUsingStream(int[] array) int sum = findSumWithoutUsingStream(array); return (double) sum / array.length; >
- Деление int на другое int возвращает результат int . Чтобы получить точное среднее значение, мы сначала приводим сумму к удвоению .
- Массив Java имеет поле длины , в котором хранится количество элементов в массиве.
3.2. Среднее с использованием Java Stream API
public static double findAverageUsingStream(int[] array) return Arrays.stream(array).average().orElse(Double.NaN); >
IntStream.average() возвращает OptionalDouble , который может не содержать значения и требует специальной обработки.
Подробнее о Optionals читайте в этой статье, а о классеOptionalDouble — в документации по Java 8 .
4. Вывод
В этой статье мы рассмотрели, как найти сумму/среднее значение элементов массива int .
Как найти среднее значение в массиве java
Чтобы найти среднее значение в массиве целых чисел в Java, можно использовать стримы. Преобразуем массив чисел в IntStream и найдем среднее значение:
import java.util.Arrays; int[] numbers = 1, 2, 3, 4, 5>; double average = Arrays.stream(numbers).average().getAsDouble(); System.out.println(average); // 3.0
Как найти среднее арифметическое в массиве java
Найти среднее арифметическое всех чисел в массиве можно разными способами. Можно перебрать весь массив при помощи цикла, сложить все элементы массива и поделить на размер массива. Можно также использовать стримы, этот вариант будет более лаконичный. Рассмотрим пример со стримами:
import java.util.Arrays; int[] coll = 1, 2, 3, 4, 5, 6>; var average = Arrays.stream(coll) .average() .getAsDouble(); System.out.println(average); // => 3.5