💡풀이1
import java.util.*;
import java.util.stream.*;
class Solution {
public int[] solution(long n) {
// 숫자 -> 배열로 변환
String[] arr = String.valueOf(n).split("");
// 배열을 정수로 변환하고 뒤집기
List<Integer> list = Arrays.stream(arr)
.mapToInt(Integer::parseInt)
.boxed()
.collect(Collectors.toList());
Collections.reverse(list);
// List<Integer>를 int[]로 변환
return list.stream().mapToInt(i->i).toArray();
}
}
💡풀이2
import java.util.*;
class Solution {
public int[] solution(long n) {
List<String> list = Arrays.asList(String.valueOf(n).split(""));
Collections.reverse(list);
return list.stream().mapToInt(Integer::parseInt).toArray();
}
}
📖풀이하며 배운점
리스트와 배열 사이에 상호 변환하는 여러가지 방법!
* 최신 버전에서는 변환이 간단하지만 테스트 환경에서는 불가능할 수도 있으니 옛날 방법도 외워둘 것✅
// Integer 리스트 -> 배열
int[] arr2 = list.stream().mapToInt(i -> i).toArray();
// 일반 리스트 -> 배열
String[] array = list.toArray(new String[list.size()]);
// 배열 -> 리스트
ArrayList<String> list2 = new ArrayList<>(Arrays.asList(array));
// int 배열 -> 리스트
List<Integer> intList2 = Arrays.stream(intArr).boxed().collect(Collectors.toList()); /* Java8 이후 버전 */
ArrayList<Integer> list2 = (ArrayList<Integer>) Arrays.stream(arr2).boxed().toList(); /* Java15 이후 버전 */
// int 배열 -> Integer 배열
Integer[] arr2 = Arrays.stream(arr1).boxed().toArray(Integer[]::new);
int[] arr3 = Arrays.stream(arr2).mapToInt(Integer::intValue).toArray();
GitHub - okjunghyeon/Programmers_CodingTest: 프로그래머스 관련 코딩테스트 문제를 풀이한 저장소입니다.
프로그래머스 관련 코딩테스트 문제를 풀이한 저장소입니다. Contribute to okjunghyeon/Programmers_CodingTest development by creating an account on GitHub.
github.com
'CodingTest > Programmers' 카테고리의 다른 글
[프로그래머스, Java] x만큼 간격이 있는 n개의 숫자 (0) | 2025.07.08 |
---|---|
[프로그래머스, Java] 평균 구하기 (0) | 2025.07.08 |
[프로그래머스, Java] 짝수와 홀수 (0) | 2025.07.08 |
[프로그래머스, Java] 자릿수 더하기 (0) | 2025.07.08 |
[프로그래머스, Java] 약수의 합 (0) | 2025.07.08 |