Java 數組如何轉成List集合


問題描述:對於給定的如下數組,如何轉換成List集合?

String[] array = {"a","b","c"}; 

參考stackoverflow總結如下幾種寫法:

1.使用原生方式,拆分數組,添加到List

List<String> resultList = new ArrayList<>(array.length); for (String s : array) { resultList.add(s); } 

2.使用Arrays.asList()

List<String> resultList= new ArrayList<>(Arrays.asList(array)); 
  • 注意:調用 Arrays.asList()時,其返回值類型是ArrayList,但此ArrayListArray的內部類,調用add()時,會報錯:java.lang.UnsupportedOperationException,並且結果會因為array的某個值的改變而改變,故需要再次構造一個新的ArrayList

3.使用Collections.addAll()

List<String> resultList = new ArrayList<>(array.length); Collections.addAll(resultList,array); 

4.使用List.of()

  • 此方法為 Java9新增方法,定義在List接口內,並且為靜態方法,故可以由類名直接調用。
List<String> resultList = List.of(array); 

原鏈接:https://stackoverflow.com/questions/157944/create-arraylist-from-array


免責聲明!

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



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