2016년 10월 13일 목요일

int array 를 list 로 변환하기

array 를 list로 변환할 때 보통 다음과 같이 사용한다.
String[] strings = new String[] {"a", "b", "c"};
List<string> stringList = Arrays.asList(strings);

이 변환은 non primitive 타입에 대해서만 가능한 변환이다.

만약 primitive 타입인 int array를 Arrays.asList를 사용하면 반환값은 다음과 같다.
int[] ints = {1, 4, 3};
List<int[]> intList = Arrays.asList(ints);

즉 Arrays.asList를 통해 primitive 타입을 list로 변환을 할 수 없다.

다음과 같이 변환해야 한다.
int[] ints = {1, 4, 3};
List<Integer> intList = Arrays.stream(ints).boxed().collect(Collectors.toList());


댓글 없음:

댓글 쓰기