java.lang.UnsupportedOperationException异常
2016-11-16 13:47
435 查看
常常使用Arrays.asLisvt()后调用add,remove这些method时出现java.lang.UnsupportedOperationException异常。这是由于:
Arrays.asLisvt() 返回java.util.Arrays$ArrayList,而不是ArrayList。Arrays$ArrayList和ArrayList都是继承AbstractList,remove,add等method在AbstractList中是默认throwUnsupportedOperationException而且不作任何操作。ArrayListoverride这些method来对list进行操作,但是Arrays$ArrayList没有overrideremove(int),add(int)等,所以throw
UnsupportedOperationException。
解决方法是使用Iterator,或者转换为ArrayList
List<String> aList = Arrays.asList(new String[] {"1","2","3","6"});
List<String> bList = Arrays.asList(new String[] {"1","2","3"});
List<String> arrayList = new ArrayList<String>(aList);
boolean a = arrayList.removeAll(bList);
System.out.println(a);//true
System.out.println(Arrays.toString(arrayList.toArray()));//6
Arrays.asLisvt() 返回java.util.Arrays$ArrayList,而不是ArrayList。Arrays$ArrayList和ArrayList都是继承AbstractList,remove,add等method在AbstractList中是默认throwUnsupportedOperationException而且不作任何操作。ArrayListoverride这些method来对list进行操作,但是Arrays$ArrayList没有overrideremove(int),add(int)等,所以throw
UnsupportedOperationException。
解决方法是使用Iterator,或者转换为ArrayList
List<String> aList = Arrays.asList(new String[] {"1","2","3","6"});
List<String> bList = Arrays.asList(new String[] {"1","2","3"});
List<String> arrayList = new ArrayList<String>(aList);
boolean a = arrayList.removeAll(bList);
System.out.println(a);//true
System.out.println(Arrays.toString(arrayList.toArray()));//6
相关文章推荐
- 关于 java.lang.UnsupportedOperationException 异常
- hibernate程序的异常:java.lang.UnsupportedOperationException: The user must supply a JDBC connection
- 彻底解决 Canvas 引起的 java.lang.unsupported operation exception, android.view.GLES20Canvas.clipPath(GLES20Canvas异常
- java.lang.UnsupportedOperationException异常
- java.lang.UnsupportedOperationException异常
- 异常:java.lang.UnsupportedOperationException: Manual close is not allowed over a Spring managed SqlSession
- 使用Arrays.asList时出现异常 java.lang.UnsupportedOperationException
- Java开发异常分析-(java.lang.UnsupportedOperationException)
- Arrays.asList()后调用add,remove这些method时出现java.lang.UnsupportedOperationException异常
- Android java.lang.UnsupportedOperationException以及布局异常处理
- java.lang.UnsupportedOperationException异常
- 安卓之使用DrawerLayout出现的java.lang.UnsupportedOperationException异常
- java.lang.UnsupportedOperationException异常
- Hbase delete遇到的常见异常: Exception in thread "main" java.lang.UnsupportedOperationException
- java.lang.UnsupportedOperationException异常
- java.lang.UnsupportedOperationException异常解决办法
- MyBatis之java.lang.UnsupportedOperationException异常解决方案
- java.lang.UnsupportedOperationException异常
- hibernate程序的异常:java.lang.UnsupportedOperationException: The user must supply a JDBC connection
- List报 java.lang.UnsupportedOperationException异常