Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

วิธีการแปลง LinkedList เป็น Array ใน Java?


toArray() วิธีการของ LinkedList คลาสแปลงอ็อบเจ็กต์ Linked List ปัจจุบันเป็นอาร์เรย์ประเภทอ็อบเจ็กต์และส่งกลับ อาร์เรย์นี้มีองค์ประกอบทั้งหมดในรายการนี้ตามลำดับที่เหมาะสม (จากองค์ประกอบแรกถึงองค์ประกอบสุดท้าย) ซึ่งทำหน้าที่เป็นสะพานเชื่อมระหว่าง 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]

คุณยังสามารถรับสตริงอาร์เรย์ได้โดยตรงโดยส่ง String[0] . ใหม่ ไปยังเมธอด 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]