정수 배열의 평균값을 구하는 문제이다. 반환값은 double이다.
class Solution {
public double solution(int[] arr) {
double sum = 0;
for(int i=0; i<arr.length; i++) {
sum += arr[i];
}
return sum / arr.length;
}
}
배열의 평균값을 구할 수 있는 방법이 뭐가 있을지 생각해봄
1. for문
2. stream
3. Math -> 없음
4. Arrays -> 없음
3, 4번 클래스는 관련 메서드 없었고, stream만 가능성이 있어보임
class Solution {
public double solution(int[] arr) {
return IntStream.of(arr).average().getAsDouble();
}
}
참고 : OptionalDouble?
Class OptionalDouble
A container object which may or may not contain a double value. If a value is present, isPresent() will return true and getAsDouble() will return the value.
...
double 값이 있는지 나타내는 컨테이너 클래스로 값이 있다면 isPresent()와 getAsDouble()을 사용할 수 있다.