主题:java.util.ConcurrentModificationException 异常解决办法
来源:互联网 发布:linux设置命令行启动 编辑:程序博客网 时间:2024/05/17 02:32
在Map或者Collection的时候,不要用它们的API直接修改集合的内容(否则会出现 java.util.ConcurrentModificationException 异常),如果要修改可以用Iterator的remove()方法,例如:
public void setReparation( Reparation reparation ) { for (Iterator it = this.reparations.iterator();it.hasNext();){ //reparations为Collection Reparation repa = (Reparation)it.next(); if (repa.getId() == reparation.getId()){ this.reparations.remove(repa); this.reparations.add(reparation); } } }
如上写会在运行期报ConcurrentModificationException,可以如下修改
public void setReparation( Reparation reparation ) {
boolean flag = false;
for (Iterator it = this.reparations.iterator();it.hasNext();){ //reparations为Collection
Reparation repa = (Reparation)it.next();
if (repa.getId() == reparation.getId()){
it.remove();
flag = true;
break;
}
}
if(flag){
this.reparations.add(reparation);
}
}
- 主题:java.util.ConcurrentModificationException 异常解决办法
- java.util.ConcurrentModificationException异常的解决办法
- java.util.ConcurrentModificationException 异常解决办法及原理
- 【ConcurrentModificationException】java.util.ConcurrentModificationException 解决办法
- 主题:为什么会出现 java.util.ConcurrentModificationException 异常?
- 异常:java.util.ConcurrentModificationException
- java.util.ConcurrentModificationException异常
- java.util.ConcurrentModificationException异常
- java.util.ConcurrentModificationException 异常
- 异常:java.util.ConcurrentModificationException
- 异常:java.util.ConcurrentModificationException
- java.util.ConcurrentModificationException 异常
- java.util.ConcurrentModificationException 异常
- java.util.ConcurrentModificationException异常
- java.util.ConcurrentModificationException异常
- java.util.ConcurrentModificationException异常
- java.util.ConcurrentModificationException异常
- java.util.ConcurrentModificationException异常
- IOS Foundation 字符串实例分析
- Android开发方向
- struts2笔记
- 手动模拟Spring管理事务
- IOS 入门开发之使用XCODE4制作静态库详解
- 主题:java.util.ConcurrentModificationException 异常解决办法
- [SQL-码农]查找非法异常的数据
- 0601
- HASH 算法
- 0602
- 0603
- 0604
- 0605
- 0606