异常
1 | Exception in thread "main" java.lang.UnsupportedOperationException |
代码
1 | public static void main(String[] args) { |
原因
出现这个异常的原因是通过Arrays.asList转换数组生成的ArrayList和java.util.ArrayList不一样,它是定义在Arrays里面,和java.util.ArrayList都是继承并实现了AbstractList抽象类。
1 | private static class ArrayList<E> extends AbstractList<E> |
不同的是Arrays.asList生成的ArrayList并没有重写AbstractList的add,remove等方法,所以调用add,remove等方法时会报错。
解决方式
解决方法是重新构造一个java.util.ArrayList或者是LinkedList
1 | public static void main(String[] args) { |