1. 程式人生 > 實用技巧 >Java 中陣列轉換為 List

Java 中陣列轉換為 List

目錄

開發中經常遇到陣列和列表(List)互相轉換的場景。除了迴圈依次轉換,還有更高效的方法。

Java 中,基本資料型別的陣列 -> List,與包裝型別的陣列 -> List 的方式不同,藉助 JDK 8 提供的 Stream,這裡對轉換方法作個記錄。

1 - int 型陣列轉換為 List

int[] array = {1, 2, 3, 4, 5};
// Stream 表示式,先裝箱,再收集
List<Integer> list = Array.stream(array).boxed().collect(Collectors.toList());

2 - List 轉換為 int 型陣列

List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
int[] array = list.stream().mapToInt(x->x).toArray();

注意:Arrays.asList() 返回的是 Arrays#ArrayList,不支援新增、刪除操作,若要進行新增和刪除,可這樣操作:
List<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3, 4, 5));

3 - String 型陣列轉換為 List

String[] array = {"Hello", "World", "!"};
List<String> list = new ArrayList<>(Arrays.asList(array));

4 - List 轉換為 String 型陣列

List<String> list = new ArrayList<String>(Arrays.asList("I", "love", "Java"));
String[] array = new String[list.size]; 
list.toArray(array);

版權宣告

作者:

瘦風(https://healchow.com)

出處: 部落格園 瘦風的部落格(https://www.cnblogs.com/shoufeng)

感謝閱讀,右側導航欄有「瘦風的南牆」公眾號二維碼,輸出更及時、更體系,歡迎掃碼關注