异常java.util.ConcurrentModificationException小问题
程序员文章站
2022-05-17 20:33:30
...
现在重新开始写Java总是遇到一些小问题,问题虽蠢虽小,但还是决定从今天开始完整记录下来
Iterator<Boom> it = boomlist.iterator();
while (it.hasNext()) {
Boom boom1 = it.next();
boom1.drawboom(this, g);
if ((System.currentTimeMillis() - boom1.timenow) >= 500) {
boomlist.remove(boom1);
}}
Exception in thread “AWT-EventQueue-0” java.util.ConcurrentModificationException
从异常看java.util.ConcurrentModificationException:字面意思并发修改异常。
出现该异常一般是检测到对象的并发修改,但不允许这样修改,就会抛出这样的异常。
当collection接口如list 被一个线程调用那么另一线程就不允许修改collection。
这一点我是非常清楚的:即遍历过程中不能进行修改,这也是使用Iterator迭代器的原因
但是我在调用remove方法时,依然是用原list进行删除,改为用迭代器调用即可,应为it.remove();
推荐阅读
-
键盘故障导致显示异常
-
利用Python进行异常值分析实例代码
-
window.opener.document.getElementById("mycid").value异常:Permission denied
-
php异常和错误处理
-
拿YII做的网站,IE的head和body都是空的,页面无异常。谷歌和火狐正常
-
php提示异常 mysql_fetch_array() expects parameter 1 to be resource, boolean given
-
关于php嵌入html的一个小问题
-
PHP 的异常处理、错误的抛出及错误回调函数,异常处理回调函数_PHP教程
-
Oracle异常处理—ORA-12514:监听程序当前无法识别连接描述符中请求的服务
-
PHP异常报告设置不生效