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)

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

本文版權歸博主所有, 歡迎轉載, 但 [必須在頁面明顯位置標明原文鏈接], 否則博主保留追究相關人士法律責任的權利.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM