Computer >> 컴퓨터 >  >> 프로그램 작성 >> Java

Java에서 LinkedList를 Array로 변환하는 방법은 무엇입니까?

<시간/>

toArray() LinkedList 메소드 클래스는 현재 연결 목록 개체를 개체 유형의 배열로 변환하고 반환합니다. 이 배열은 이 목록의 모든 요소를 ​​적절한 순서로 포함합니다(첫 번째 요소에서 마지막 요소까지). 이것은 배열 기반 API와 컬렉션 기반 API 사이의 다리 역할을 합니다.

따라서 LinkedList를 배열로 변환하려면 -

  • LinkedList 클래스를 인스턴스화합니다.

  • add()를 사용하여 채우기 방법.

  • toArray() 호출 위에서 생성한 연결 리스트에 메소드를 입력하고 객체 배열을 검색합니다.

  • 개체 배열의 모든 요소를 ​​문자열로 변환합니다.

import java.util.Arrays;
import java.util.LinkedList;
public class LinkedListToArray {
   public static void main(String[] args) {
      LinkedList <String> list = new LinkedList<String>();
      //Instantiating an ArrayList object
      list.add("JavaFX");
      list.add("Java");
      list.add("WebGL");
      list.add("OpenCV");
      list.add("OpenNLP");
      list.add("JOGL");
      list.add("Hadoop");
      list.add("HBase");
      list.add("Flume");
      list.add("Mahout");
      list.add("Impala");
      Object[] objectAarray = list.toArray();
      int length = objectAarray.length;;
      String [] stringArray = new String[length];
      for(int i =0; i < length; i++) {
         stringArray[i] = (String) objectAarray[i];
      }
      System.out.println("Contents of the array: \n"+Arrays.toString(stringArray));
   }
}

출력

Contents of the array:
[JavaFX, Java, WebGL, OpenCV, OpenNLP, JOGL, Hadoop, HBase, Flume, Mahout, Impala]

new String[0]을 전달하여 String 배열을 직접 가져올 수도 있습니다. toArray() 메서드에.

import java.util.Arrays;
import java.util.LinkedList;
public class LinkedListToArray {
   public static void main(String[] args) {
      LinkedList <String> list = new LinkedList<String>();
      //Instantiating an ArrayList object
      list.add("JavaFX");
      list.add("Java");
      list.add("WebGL");
      list.add("OpenCV");
      list.add("OpenNLP");
      list.add("JOGL");
      list.add("Hadoop");
      list.add("HBase");
      list.add("Flume");
      list.add("Mahout");
      list.add("Impala");
      String[] stringArray = list.toArray(new String[0]);
      System.out.println("Contents of the array: \n"+Arrays.toString(stringArray));
   }
}

출력

Contents of the array:
[JavaFX, Java, WebGL, OpenCV, OpenNLP, JOGL, Hadoop, HBase, Flume, Mahout, Impala]