Java中List.remove(removeRange,clear類似) 報出 UnsupportedOperationException 的錯誤。原來該List是一個AbstractList,不支持增刪改操作。
一般情況下我們會使用 LinkedList 和 ArrayList ,什麼情況下出現 AbstractList 呢?通過 ArrayList.asList() 函數得到的 List 就是 AbstractList。該AbstractList只是簡單地在已有的元素數組上套了一層List 的接口,所以不支持增刪改操作。如果希望能增刪改,必須 new 一個LinkedList 或ArrayList。