나의 풀이
import java.util.Arrays;
class Solution {
public double solution(int[] arr) {
return Arrays.stream(arr).average().getAsDouble();
}
}
이번에는 stream을 사용해서 문제를 해결하고자 했다.
익숙한 for문, while문에서 벗어나고 싶었다.
다른 사람의 풀이
import java.util.Arrays;
public class GetMean {
public int getMean(int[] array) {
return (int) Arrays.stream(array).average().orElse(0);
}
public static void main(String[] args) {
int x[] = {5, 4, 3};
GetMean getMean = new GetMean();
// 아래는 테스트로 출력해 보기 위한 코드입니다.
System.out.println("평균값 : " + getMean.getMean(x));
}
}
출처 : https://school.programmers.co.kr/learn/courses/30/lessons/12944/solution_groups?language=java
- .orElse(0): 평균값이 없을 경우(빈 배열) 0을 반환
- (int): 평균은 double인데, 정수로 강제 형변환(casting)합니다. 예: 4.5 → 4
'CODING > CS, 알고리즘, 자료구조 공부' 카테고리의 다른 글
[프로그래머스] 약수의 합 (0) | 2025.05.27 |
---|---|
[프로그래머스] 자릿수 더하기 (0) | 2025.05.14 |
[쉬운코드] Array List 와 Linked List 의 차이 (0) | 2025.05.13 |
[쉬운코드] 큐(queue) 설명 (0) | 2025.05.09 |
[쉬운코드] 스택(stack) 설명 (0) | 2025.05.08 |