Java에서 목록을 배열로 변환
List 인터페이스는 정렬된 컬렉션을 저장하는 방법을 제공합니다. 의 하위 인터페이스입니다. 수집 . 중복된 값을 저장할 수 있는 순서가 지정된 개체 모음입니다. List는 삽입 순서를 유지하므로 위치에 따른 액세스와 요소 삽입이 허용됩니다. 이제 여기에 우리는 목록 그것이 무엇이든 링크드리스트 또는 배열목록 문자열의 경우, 우리의 동기는 다른 방법을 사용하여 이 목록을 Java의 문자열 배열로 변환하는 것입니다.
행동 양식:
- get() 메소드 사용
- toArray() 메소드 사용
- Java 8에 도입된 Stream 사용
방법 1: get() 메소드 사용
아래 목록 방법을 사용하여 모든 요소를 하나씩 가져와서 배열에 삽입할 수 있습니다.
반환 유형: 목록에서 지정된 인덱스에 있는 요소입니다.
통사론:
public E get(int index)
예:
자바
// Java program to Convert a List to an Array> // Using get() method in a loop> > // Importing required classes> import> java.io.*;> import> java.util.LinkedList;> import> java.util.List;> > // Main class> class> GFG {> > > // Main driver method> > public> static> void> main(String[] args)> > {> > > // Creating a LinkedList of string type by> > // declaring object of List> > List list => new> LinkedList();> > > // Adding custom element to LinkedList> > // using add() method> > list.add(> 'Geeks'> );> > list.add(> 'for'> );> > list.add(> 'Geeks'> );> > list.add(> 'Practice'> );> > > // Storing it inside array of strings> > String[] arr => new> String[list.size()];> > > // Converting ArrayList to Array> > // using get() method> > for> (> int> i => 0> ; i arr[i] = list.get(i); // Printing elements of array on console for (String x : arr) System.out.print(x + ' '); } }> |
산출:
Geeks for Geeks Practice
이 Java 코드의 시간 복잡도와 공간 복잡도는 O(n)입니다. 여기서 n은 목록의 크기입니다.
방법 2: 사용 toArray() 메서드
예:
자바
// Java Program to Convert a List to an array> // using toArray() Within a loop> > // Importing utility classes> import> java.util.*;> > // Main class> public> class> GFG {> > > // Main driver method> > public> static> void> main(String[] args)> > {> > > // Creating an empty LinkedList of string type> > // by declaring object of List> > List list => new> LinkedList();> > > // Adding elements to above LinkedList> > // using add() method> > list.add(> 'Geeks'> );> > list.add(> 'for'> );> > list.add(> 'Geeks'> );> > list.add(> 'Practice'> );> > > // Converting List to array> > // using toArray() method> > String[] arr = list.toArray(> new> String[> 0> ]);> > > // Printing elements of array> > // using for-each loop> > for> (String x : arr)> > System.out.print(x +> ' '> );> > }> }> |
산출:
Geeks for Geeks Practice
이 Java 코드의 시간 복잡도와 공간 복잡도는 O(n)입니다. 여기서 n은 목록의 크기입니다.
방법 3: Java8에 도입된 Stream 사용
예:
자바
// Java Program to Demonstrate conversion of List to Array> // Using stream> > // Importing utility classes> import> java.util.*;> > // Main class> class> GFG {> > > // Main driver method> > public> static> void> main(String[] args)> > {> > > // Creating an empty LinkedList of string type> > List list => new> LinkedList();> > > // Adding elements to above LinkedList> > // using add() method> > list.add(> 'Geeks'> );> > list.add(> 'for'> );> > list.add(> 'Geeks'> );> > list.add(> 'Practice'> );> > > // Storing size of List> > int> n = list.size();> > > // Converting List to array via scope resolution> > // operator using streams> > String[] arr> > = list.stream().toArray(String[] ::> new> );> > > // Printing elements of array> > // using enhanced for loop> > for> (String x : arr)> > System.out.print(x +> ' '> );> > }> }> |
산출:
Geeks for Geeks Practice
팁: 다음을 통해 배열을 다시 목록으로 변환할 수 있습니다. asList() 방법.
이 Java 코드의 시간 복잡도와 공간 복잡도는 O(n)입니다. 여기서 n은 목록의 크기입니다.
관련 기사:
- Java에서 ArrayList를 배열로 변환
- Java에서 배열로 설정