java 异常java.lang.UnsupportedOperationException
代码如下:
List<String> list= Arrays.asList(arr.replaceAll("\\'", "").split(","));
list.remove(list.get(0));
原因:
Arrays.asList() 返回的是java.util.Arrays的内部类ArrayList, 而不是java.util.ArrayList。java.util.Arrays中的ArrayList和ArrayList都继承了AbstractList,remove,add等方法。AbstractList中默认throw UnsupportedOperationException,而且不作任何操作。ArrayList override这些method来对list进行操作,但是Arrays中的ArrayList没有override remove(int),add(int)等,所以throw UnsupportedOperationException。
解决办法:
将得到的list转换后使用,或者使用Iterator
List<String> list= Arrays.asList(arr.replaceAll("\\'", "").split(","));
List arrayList = new ArrayList(list);