배열의 평균값
✅ 문제설명
정수 배열 numbers가 매개변수로 주어집니다. numbers의 원소의 평균값을 return하도록 solution 함수를 완성해주세요.
✅ 제한사항
0 ≤ numbers의 원소 ≤ 1,000
1 ≤ numbers의 길이 ≤ 100
정답의 소수 부분이 .0 또는 .5인 경우만 입력으로 주어집니다.
🔽 소스코드 1
배열의 값을 반복문(for)을 사용해 하나씩 꺼내 누적합으로 더해준 후 배열의 길이만큼 나눠준다.
class Solution {
public double solution(int[] numbers) {
double sum = 0;
for(int i = 0; i < numbers.length; i++){
sum += numbers[i];
}
return sum / numbers.length;
}
}
🔽 소스코드 2
Arrays.stream() : Arrays 클래스의 stream() 메서드를 사용해 배열을 스트림으로 변환 (※ numbers 배열을 스트림(IntStream) 으로 변환)average() : 평균을 도출 (OptionDouble 를 반환하고, 배열이 비어있을 경우 OptionaDouble.empty()를 반환)orElse(0) : 주어진 값이 null일 경우 0을 돌려주고 아닐 경우 값을 돌려준다.import java.util.Arrays;
class Solution {
public double solution(int[] numbers) {
return Arrays.stream(numbers).average().orElse(0);
}
}