-
[Java] 배열(Array)을 리스트(List)로 변환 - 반복문, Arrays, Collection, StreamJava/Collection(컬렉션) 2023. 5. 6. 17:36반응형
목차
배열(Array)을 리스트(List)로 변환
배열을 리스트로 변환하는 방법은 반복문을 사용하거나 Arrays, Collection, Stream 클래스에세 제공하는 메서드를 사용하여 변환할 수 있습니다.
1. 반복문을 사용
빈 리스트를 생성한 후, 배열의 모든 요소를 리스트에 추가하는 방법입니다.
Integer, Double, String 등 여러 타입의 배열을 리스트로 변환하는 경우 제네릭 타입의 메서드를 정의하여 코드의 양을 줄일 수 있습니다.import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * 배열(Array)을 리스트(List)로 변환 - 반복문, Arrays, Collection, Steram * * <p>배열을 리스트로 변환하는 방법은 반복문을 사용하거나 * Arrays, Collection, Stream 클래스에세 제공하는 메서드를 사용하여 변환할 수 있습니다.</p> */ public class Example { public static void main(String[] args) { String arr[] = {"Python", "C", "Java", "C++", "Visual Basic"}; System.out.println("배열: " + Arrays.toString(arr)); List<String> list = convertArrayToList(arr); System.out.println("리스트:" + list); } /** * 방법 01. 반복문을 사용 * * <p>빈 리스트를 생성한 후, 배열의 모든 요소를 리스트에 추가하는 방법입니다.</p> * <p>Integer, Double, String 등 여러 타입의 배열을 리스트로 변환하는 경우 제네릭 타입의 메서드를 정의하여 코드의 양을 줄일 수 있습니다.</p> */ public static <T> List<T> convertArrayToList(T arr[]) { List<T> list = new ArrayList<>(); for (T t : arr) { list.add(t); } return list; } }
2. Arrays.asList() 메서드를 사용java.util 패키지에 속하는 Java Arrays 클래스의 메서드입니다.
Arrays.asList()를 사용하면 java.util.Arrays 패키지에 존재하는 고정된 크기의 ArrayList를 반환하기 때문에 값을 추가하거나 삭제할 수 없습니다. 리스트의 값을 추가하거나 삭제가 필요한 경우, ArrayList 생성자 함수의 매개변수로 Arrays.asList() 메서드를 전달하여 java.util 패키지에 ArrayList를 반환받으시면 됩니다.
import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * 배열(Array)을 리스트(List)로 변환 - 반복문, Arrays, Collection, Steram * * <p>배열을 리스트로 변환하는 방법은 반복문을 사용하거나 * Arrays, Collection, Stream 클래스에세 제공하는 메서드를 사용하여 변환할 수 있습니다.</p> */ public class Example { public static void main(String[] args) { String arr[] = {"Python", "C", "Java", "C++", "Visual Basic"}; System.out.println("배열: " + Arrays.toString(arr)); List<String> list = convertArrayToList01(arr); System.out.println("리스트:" + list); } /** * 방법 02. Arrays.asList() 메서드를 사용 * * <p>java.util 패키지에 속하는 Java Arrays 클래스의 메서드입니다.</p> */ public static <T> List<T> convertArrayToList01(T arr[]) { List<T> list = Arrays.asList(arr); return list; } /** * 방법 02. Arrays.asList() 메서드를 사용 * * <p>Arrays.asList()를 사용하면 java.util.Arrays 패키지에 존재하는 고정된 크기의 ArrayList를 반환하기 때문에 값을 추가하거나 삭제할 수 없습니다. </p> * <p>리스트의 값을 추가하거나 삭제가 필요한 경우, ArrayList 생성자 함수의 매개변수로 Arrays.asList() 메서드를 전달하여 java.util 패키지에 ArrayList를 반환받으시면 됩니다.</p> */ public static <T> List<T> convertArrayToList02(T arr[]) { List<T> list = new ArrayList<>(Arrays.asList(arr)); return list; } }
3. Collection.addAll() 메서드를 사용
java.util 패키지에 속하는 Java Collections 클래스의 메서드입니다.
import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List; /** * 배열(Array)을 리스트(List)로 변환 - 반복문, Arrays, Collection, Steram * * <p>배열을 리스트로 변환하는 방법은 반복문을 사용하거나 * Arrays, Collection, Stream 클래스에세 제공하는 메서드를 사용하여 변환할 수 있습니다.</p> */ public class Example { public static void main(String[] args) { String arr[] = {"Python", "C", "Java", "C++", "Visual Basic"}; System.out.println("배열: " + Arrays.toString(arr)); List<String> list = convertArrayToList(arr); System.out.println("리스트:" + list); } /** * 방법 03. Collection.addAll() 메서드를 사용 * * <p>java.util 패키지에 속하는 Java Collections 클래스의 메서드입니다.</p> */ public static <T> List<T> convertArrayToList(T arr[]) { List<T> list = new ArrayList<>(); Collections.addAll(list, arr); return list; } }
4. Java8 Stream API를 사용
import java.util.Arrays; import java.util.List; import java.util.stream.Collectors; /** * 배열(Array)을 리스트(List)로 변환 - 반복문, Arrays, Collection, Steram * * <p>배열을 리스트로 변환하는 방법은 반복문을 사용하거나 * Arrays, Collection, Stream 클래스에세 제공하는 메서드를 사용하여 변환할 수 있습니다.</p> */ public class Example { public static void main(String[] args) { String arr[] = {"Python", "C", "Java", "C++", "Visual Basic"}; System.out.println("배열: " + Arrays.toString(arr)); List<String> list = convertArrayToList(arr); System.out.println("리스트:" + list); } /** * 방법 04. Java8 Stream API를 사용 */ public static <T> List<T> convertArrayToList(T arr[]) { return Arrays.stream(arr).collect(Collectors.toList()); } }
반응형'Java > Collection(컬렉션)' 카테고리의 다른 글
[JAVA] 배열의 합 구하기 (1) 2024.09.17 [JAVA] 배열 검색하기 (0) 2024.09.17 [JAVA] 배열 정렬하기 : 오름차순, 내림차순 (1) 2024.09.17 [Java] List 중복 제거 (HashSet, TreeSet, Stream) (0) 2019.12.16 [Java] Map 전체 출력(entrySet, keySet, Iterator, Lambda, Stream) (0) 2018.12.27