정수 n과 k가 주어졌을 때, 1 이상 n이하의 정수 중에서 k의 배수를 오름차순으로 저장한 배열을 return 하는 solution 함수를 완성해 주세요.
List만들어서 배수만큼 담으면 되는거아닌가?
import java.util.*;
class Solution {
public int[] solution(int n, int k) {
int[] answer = new int[n / k];
List<Integer> num = new ArrayList<>();
for(int i = 1 ; i <= (n/k) ; i++){
num.add(k*i);
}
answer = num.stream().mapToInt(Integer::intValue).toArray();
return answer;
}
}
Integer::intValue : 메서드 레퍼런스
람다 표현식 (Integer integer) -> integer.intValue()과 동일
List를 int[]로 변환하는 과정에서 mapToInt()은 중간 과정으로, Integer 객체를 int 값으로 변환하는 역할. 이후에 toArray()를 호출하여 해당하는 int[] 배열을 구함.