반응형
List는 generic type이다. int는 primitive data type이라서 generic type에 사용할 수 없다.
그렇다면 int 배열을 어떻게 List로 변경할 수 있을까?
두가지 방법이 있다.
1. 반복문을 통해서 하나하나 넣어주기
int[] arr = {1, 2, 3};
List<Integer> list = new ArrayList<>(arr.length);
for (int num : arr) {
list.add(num);
}
배열의 element하나씩 list 에 add해준다.
2. stream을 이용하는 방법
List<Integer> list1 = Arrays.stream(arr).boxed().collect(Collectors.toList());
List<Integer> list2 = IntStream.of(arr).boxed().collect(Collectors.toList());
먼저 Arrays.stream(arr)을 통해 배열을 stream 화 해준다. Arrays.stream(arr)의 결과는 IntStream 이므로 IntStream.of(arr)도 무방하다.
boxed() 를 통해서 stream의 개별 값을 wrapper 하여 Integer 객체로 변경한다.
collect를 통해서 List로 모아준다.
반응형
'TINYTEXT' 카테고리의 다른 글
맥에서 exit입력하여 터미널 닫기 (0) | 2024.09.21 |
---|---|
Mac / ubuntu에서 screen 사용법 (0) | 2024.09.21 |
pom.xml 에서 시간 값 변수로 가져오기 (0) | 2024.09.21 |
Python 에서 ++ -- (0) | 2024.09.21 |
IntelliJ에서 Decompiler를 이용하여 Kotlin을 Java code로 확인하기 (0) | 2024.09.21 |