문제 설명
정수를 담고 있는 배열 arr의 평균값을 return하는 함수, solution을 완성해보세요.
제한사항
- arr은 길이 1 이상, 100 이하인 배열입니다.
- arr의 원소는 -10,000 이상 10,000 이하인 정수입니다.
풀이
- 1) 하드 코딩
- arr가 null일 경우 0을 리턴
- arr의 값을 모두 더한 총합을 구함
- arr.length를 나누어 평균을 구함
import java.util.Arrays;
import java.util.Spliterator;
class Solution {
public double solution(int[] arr) {
double answer = 0;
if(arr!=null){ //(1)
for(int i : arr){
answer+=i;
i++;
}
return answer/(arr.length);
}
return 0;
}
}
- 2) 스트림 사용
- Arrays.steram에 arr를 넣는다
- .average();로 평균을 구한다
- orElse(0);로 null일 시 0을 반환
import java.util.Arrays;
import java.util.Spliterator;
class Solution {
public double solution(int[] arr) {
return (int) Arrays.stream(arr).average().orElse(0);
}
}