💡문제 상황
Integer ArrayList to int 배열로 변환하기
💡내 풀이
[방법1]
public static void main(String args[]) {
List<Integer> list = new ArrayList<>();
list.add(1);
list.add(2);
list.add(3);
int[] arr1 = new int[list.size()]
for (int i = 0 ; i < list.size() ; i++) {
arr1[i] = list.get(i).intValue();
}
}
👉 반복문을 통해서 배열에 intValue로 넣어주기
[방법2]
int[] arr2 = list.stream()
.mapToInt(i -> i)
.toArray();
👉List 를 Stream으로 변환 후 map to IntStream을 반환한 후 배열에 넣어줌.
👉map 연산 시 자바가 자동으로 각 요소의 Integer 요소를 int 형으로 언박싱
[방법3]
int[] arr3 = list.stream()
.mapToInt(Integer::intValue)
.toArray();
👉List 를 Stream으로 변환 후 map to IntStream을 반환한 후 배열에 넣어줌.
👉map 연산 시 intValue 메서드를 통해 각 요소를 int 형으로 변환
[방법4]
int[] arr4 = list.stream()
.filter(i -> i != null)
.mapToInt(i -> i)
.toArray();
👉방법2에 필터를 추가함. 필터를 통해 리스트의 null을 걸러낸다.
참고
https://velog.io/@deannn/Java-int%ED%98%95-ArrayList-%EB%B0%B0%EC%97%B4-%EB%B3%80%ED%99%98
💡문제 상황
String ArrayList에서 String 변환하기
💡내 풀이
String answer = list.stream()
.map(n->String.valueOf(n))
.collect(Collectors.joining());
'☕JAVA > 🐥 알고리즘 [JAVA]' 카테고리의 다른 글
[JAVA] 소문자 대문자 바꾸기 - 아스키 코드 이용하기 (0) | 2022.11.21 |
---|---|
[JAVA] 팩토리얼 (0) | 2022.11.21 |
[JAVA] 제곱과 제곱근 (0) | 2022.11.15 |
[JAVA] int를 int 배열로 분할하기 (0) | 2022.11.15 |
[JAVA] 문자열 뒤집기 / 문자 반복하기 (0) | 2022.11.15 |