java.lang.UnsupportedOperationException

来源:互联网 发布:h网络快还是e网络快 编辑:程序博客网 时间:2024/06/08 05:48

原因:当Java中的List列表是通过Arrays.asList(T... a)来生成的,而又想对这个list作修改操作,就会抛出此异常。

如: List<Menu> list = Arrays.asList(new Menu[]{m1,m2}); for(Menu m : list){ m.setChildren(m3);}

解决方案:使用add方法添加对象。


异常示例:

Exception in thread "main" java.lang.UnsupportedOperationExceptionat java.util.AbstractList.remove(AbstractList.java:161)at java.util.AbstractList$Itr.remove(AbstractList.java:374)at List转树实现.getRootNodeByLastNode(List转树实现.java:70)at List转树实现.main(List转树实现.java:57)

代码示例:

//通过此方法构造的List列表,无论foreach还是iterator都不能做删除操作(或者添加)List<Integer> list = Arrays.asList(new Integer[]{1,2,3});//1.errorfor (Integer integer : list) {//list.add(1);list.remove(integer);}//2.errorIterator<Integer>iter = list.iterator();while(iter.hasNext()){iter.next();iter.remove();}System.out.println(list);


0 0
原创粉丝点击