1. 程式人生 > >Java 陣列如何轉成List集合

Java 陣列如何轉成List集合

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

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

總結如下幾種寫法:

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);