CodeGym /Java Blog /Toto sisi /在 Java 中將列表轉換為數組
John Squirrels
等級 41
San Francisco

在 Java 中將列表轉換為數組

在 Toto sisi 群組發布
列表和數組是您將經常使用的兩種在 Java 中存儲數據的方法。在您需要存儲數據而無需任何類型的文件處理的項目中,列表和數組可讓您在整個程序執行過程中存儲數據。在本教程中,我們將交替使用在 Java 中實現列表接口的 ArrayList 類。

列表和數組之間的區別

列表 大批
列表的大小可以改變 數組的大小不能改變
您不能將原始類型存儲在列表中 您可以將原始類型存儲在數組中
您可以將泛型與列表一起使用 您不能將泛型與數組一起使用
消耗更多內存 消耗更少的內存

使用庫函數將列表轉換為數組

List 有一個toArray()方法,它直接將任何列表的內容轉換為數組,同時保留文本在數組中的位置,就像它在原始列表中一樣。這是使用此內置庫函數在 Java 中將列表轉換為數組的算法/步驟。
  1. 初始化一個 ArrayList。
  2. 通過list.add(data_type)方法向 List 添加元素。
  3. 創建一個與列表大小相同的數組。
  4. 使用在步驟 3 中創建的數組的變量名作為參數,將列表轉換為數組。
  5. 打印數組的內容。
下面給出了實現這些步驟的代碼。

import java.util.ArrayList;
public class convertListToArray {
 
    public static void main(String[] args) {
 
        //Converting List to Array With Library Function
 
        //Declaration of Array List
        ArrayList<String> sampleList = new ArrayList<String>();
 
        //Adding Elements to Array List
        sampleList.add("California");
        sampleList.add("Texas");
        sampleList.add("Illinois");
        sampleList.add("Massachusetts");
        sampleList.add("Florida");
        sampleList.add("Virginia");
        sampleList.add("Colorado");
 
 
        //Printing the Array List
        System.out.println("Elements of List: " + sampleList);
 
        //Declaring Array with Equal Size to the List
        String[]arr = new String [sampleList.size()];
 
        //Converting List to Array
        sampleList.toArray(arr);
 
        //Printing the Array
        System.out.print("Elements of Array: ");
        for (int i = 0 ; i < arr.length ; i++){
            System.out.print(arr[i] + "  ");
        }
    }
}

不使用庫函數將列表轉換為數組

有時,可能需要在不使用內置函數的情況下將列表轉換為數組。手頭的問題可能會在庫函數方面使用某些限制。這種要求對於編程學生來說很常見,他們被鼓勵在沒有庫函數的情況下工作,以幫助他們在實現這些函數之前了解這些函數的內部工作原理。在這種情況下,您可以使用以下步驟在 java 中將列表轉換為數組,而無需任何庫函數。
  1. 初始化一個 ArrayList。
  2. 通過list.add(data_type)方法向 List 添加元素。
  3. 創建一個與列表大小相同的數組。
  4. 創建一個 for 循環,它將遍歷 ArrayList 的每個元素,並通過list.get(index)函數將其傳遞給Array[index]
  5. 打印數組的內容以表明您實際上正在將列表轉換為數組。
下面給出了實現這些步驟的代碼。

import java.util.ArrayList;
public class converListToArray2 {
 
    public static void main(String[] args) {
        //Converting List to Array Without Library Functions
 
        //Declaration of Array List
        ArrayList<String> sampleList = new ArrayList<String>();
 
        //Adding Elements to Array List
        sampleList.add("California");
        sampleList.add("Texas");
        sampleList.add("Illinois");
        sampleList.add("Massachusetts");
        sampleList.add("Florida");
        sampleList.add("Virginia");
        sampleList.add("Colorado");
 
 
        //Printing the Array List
        System.out.println("Elements of List: " + sampleList);
 
        //Declaring Array with Equal Size to the List
        String[]arr = new String [sampleList.size()];
 
        //Converting to Array
        for (int i = 0 ; i < arr.length ; i++){
            arr[i] = sampleList.get(i);
        }
 
        //Printing the Array
        System.out.print("Elements of Array: ");
        for (int i = 0 ; i < arr.length ; i++){
            System.out.print(arr[i] + "  ");
        }
    }
}
同樣,如果您還想知道如何將 Array 轉換為 List,可以使用內置的Array.asList()方法或遍歷數組並將值存儲在 List 中的每個索引處。
留言
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION