时间:2021-05-19
java.util.ConcurrentModificationException 解决办法
前言:
在使用iterator.hasNext()操作迭代器的时候,如果此时迭代的对象发生改变,比如插入了新数据,或者有数据被删除。
则使用会报以下异常:
例如以下程序(转自互联网):
原因:Iterator做遍历的时候,HashMap被修改(bb.remove(ele), size-1),Iterator(Object ele=it.next())会检查HashMap的size,size发生变化,抛出错误ConcurrentModificationException。
解决办法:
1) 通过Iterator修改Hashtable
2) 根据实际程序,您自己手动给Iterator遍历的那段程序加锁,给修改HashMap的那段程序加锁。
3) 使用“ConcurrentHashMap”替换HashMap,ConcurrentHashMap会自己检查修改操作,对其加锁,也可针对插入操作。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
java.util.ConcurrentModificationException解决方法在使用iterator.hasNext()操作迭代器的时候,如果此时迭
AndroidCausedby:java.lang.ClassNotFoundException解决办法出现问题:08-1318:29:22.924:E/And
java出现NullPointerException的原因及解决办法日常开发过程中,最常见的异常莫过于NullPointerException,之前的时候,只是
在此之前,已经为大家整理了很多关于经典问题红黑树的思路和解决办法。本篇文章,是通过分析java.util.TreeMap源码,让大家通过实例来对红黑树这个问题有
Eclipse开发java出现FailedtocreatetheJavaVirtualMachine错误解决办法一直用Eclipse开发Java,突然有这么一天