首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Java List 與陣列相互轉換完整指南

     編輯:Java 相關知識

List 轉陣列

在 Java 中,將 List(以 ArrayList 為例)轉換為陣列,主要透過 toArray() 方法實現。該方法簽名為:

public <T> T[] toArray(T[] a)

其行為特點如下:

  • 返回的陣列運行時類型與傳入的陣列 a 一致。
  • 若傳入陣列長度足夠,直接填入元素並返回;否則根據列表大小與陣列類型新建陣列。
  • 若陣列長度大於列表,多餘位置會被設為 null(前提是列表不含 null 元素)。

實戰範例

List<String> list = new ArrayList<>();
list.add("1");
list.add("2");
final int size = list.size();
String[] arr = list.toArray(new String[size]);

陣列轉 List

將陣列轉為 List 使用 Arrays.asList():

public static <T> List<T> asList(T... a)

注意事項:

  • 返回的是固定大小的列表視圖,底層仍是原陣列,修改列表會「寫回」陣列。
  • 不支援 add/remove 等改變長度的操作,否則拋出 UnsupportedOperationException。
  • 若需可變列表,可用 new ArrayList<>(Arrays.asList(arr)) 包裝。

實戰範例

String[] arr = new String[] {"1", "2"};
List<String> list = Arrays.asList(arr);
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved