Coding/CodingTest
[프로그래머스] n 번째 원소부터 (ps. stream의 간결함)
mimi
2023. 9. 20. 10:49
728x90
반응형
코딩테스트를 풀다 보면, 처음에 길게 작성했던 코드를 다시 봤을 때
정말 엄청나게 간결한 코드로 수정이 가능한 경우가 많았다.
오늘 이같은 상황을 또 한 번 마주하게 되어 기록을 남겨본다.
첫 풀이 코드
class Solution {
public int[] solution(int[] num_list, int n) {
int[] answer = new int[(num_list.length - n) + 1];
for(int i=0,j=n-1; i<answer.length; i++, j++) {
answer[i] = num_list[j];
}
return answer;
}
}
stream 사용 수정 코드
import java.util.Arrays;
class Solution {
public int[] solution(int[] num_list, int n) {
return Arrays.stream(num_list, n - 1, num_list.length).toArray();
}
}
배열 선언과 for문을 사용했던 코드에서 stream을 사용하니
return 한 줄로 간결하게 작성이 가능하다.
마법같은 코드 간소화를 통해 stream 공부도 꾸준히 해야함을 느꼈다.
기존에 1회 정독했었던 자바의 정석, 이것이 자바다 책 stream부분을 다시 읽고
유튜브나 인프런 사이트에서 자바 stream 강의를 다시 한 번 공부해야겠다.
728x90
반응형