자료형 변환
Summary
// int[] -> List<Integer> List<Integer> list = Arrays.stream(arr) .boxed() .collect(Collectors.toList()); // List<Integer> -> int[] int[] arr = list.stream() .mapToInt(i -> i) .toArray(); // Integer[] -> 가변 List<Integer> List<Integer> list = new ArrayList<>(Arrays.asList(arr)); // int[] -> Integer[] Integer[] boxed = Arrays.stream(arr) .boxed() .toArray(Integer[]::new); // String 숫자 각 자리 -> int[] int[] nums = str.chars() .map(c -> c - '0') .toArray(); // String[] -> int[] int[] nums = Arrays.stream(strArr) .mapToInt(Integer::parseInt) .toArray(); // List<String> -> String String result = String.join("", list); // List<Character> -> String String result = list.stream() .map(String::valueOf) .collect(Collectors.joining());
주의점
이것만 조심
실수 주의 Arrays.asList(intArr)List<Integer>가 아님Arrays.asList(arr)크기 변경 불가, add/remove안 됨int[] -> List<Integer>반드시 boxed()필요List<Integer> -> int[]반드시 mapToInt()필요toArray()객체 배열은 Integer[]::new,String[]::new필요숫자 문자열 각 자리 str.chars().map(c -> c - '0')가 제일 깔끔