使用Arrays.asList()可能会报UnsupportedOperationException异常。
看下源码大家会发现此ArrayList
非彼ArrayList
。
这里的Arrays.asList()返回的是Arrays.java的内部类ArrayList。这个ArrayList继承自AbstractList,AbstractList内部并没有实现像下面这些方法:
public E set(int index, E element);
public void add(int index, E element);
解决方案:
Collections中有更好的实现。
public static <T> boolean addAll(Collection<? super T> c, T... elements);