Java中ArrayList是一個非常實用的集合類,它可以存儲任意類型的數據。但是,有些情況下,我們需要將ArrayList轉換成數組。本文將從多個方面詳細闡述Java ArrayList轉換為數組的方法。
一、通過toArray()方法轉換
Java中ArrayList提供了toArray()方法,可以將ArrayList轉換成數組。代碼示例如下:
import java.util.ArrayList;
import java.util.Arrays;
public class ArrayListToArrayDemo {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
list.add("Java");
list.add("Python");
list.add("C++");
list.add("PHP");
String[] arr = list.toArray(new String[list.size()]);
System.out.println(Arrays.toString(arr));
}
}
首先,創建一個字符串類型的ArrayList,然後調用toArray()方法將ArrayList轉換成字符串類型的數組。
注意,toArray()方法的參數需要傳入一個指定類型和大小的數組,否則會返回一個Object類型的數組。同時,toArray()方法的返回值是一個新的數組,而不是原來的ArrayList。
二、通過Collections.addAll()方法轉換
Java中還有一種將ArrayList轉換成數組的方法,就是使用Collections.addAll()方法。該方法可以將一個數組或者其他集合中的元素添加到ArrayList中,並返回一個新的數組。代碼示例如下:
import java.util.ArrayList;
import java.util.Collections;
public class ArrayListToArrayDemo2 {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
list.add("Java");
list.add("Python");
list.add("C++");
list.add("PHP");
String[] arr = new String[list.size()];
arr = list.toArray(arr);
Collections.addAll(list, arr);
System.out.println(list);
}
}
首先,創建一個字符串類型的ArrayList,調用toArray()方法將ArrayList轉換成字符串類型的數組,然後使用Collections.addAll()方法將數組中的元素添加到ArrayList中。
三、通過循環轉換
除了上述兩種方法,我們還可以使用循環將ArrayList轉換成數組。代碼示例如下:
import java.util.ArrayList;
public class ArrayListToArrayDemo3 {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<>();
list.add("Java");
list.add("Python");
list.add("C++");
list.add("PHP");
String[] arr = new String[list.size()];
for (int i = 0; i < list.size(); i++) {
arr[i] = list.get(i);
}
System.out.println(Arrays.toString(arr));
}
}
首先,創建一個字符串類型的ArrayList,然後通過循環將ArrayList中的元素賦值給字符串數組。
這種方法比較簡單,但是需要手動遍歷ArrayList,效率比較低,盡量避免使用。
四、總結
以上就是Java ArrayList轉換成數組的三種方法,分別是通過toArray()方法轉換,通過Collections.addAll()方法轉換以及通過循環轉換。對於小數據量的轉換,使用哪種方法都無所謂。但是對於大數據量的轉換,建議使用toArray()方法,效率更高。
原創文章,作者:VDOL,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/134055.html
微信掃一掃
支付寶掃一掃