我的代码(简要介绍如下);当最后一次调用events{
"name":"Party",
"StartTime":"2/19/2016 7:30:00 AM"
}
时,它会抛出ConcurrentModificationException
-
PS-我试过调试它,我似乎无法确定如何使其工作。如果我切换删除和添加方法,它可以工作,但是如果somethingElse =一些不太有用的东西,它会删除唯一的值。
PS-我知道解决方案here;但我需要它来添加AFTER删除导致问题的值
hasNext()
Edit- somethingElse可以是一个或全新的对象(有一个循环可以确定这个) 这是我的第一篇文章 - 如果它太抽象或代码不清楚,请告诉我,我会发布我的完整代码。
谢谢! :)
答案 0 :(得分:0)
您的问题可以理解 - 任何时间点body: null
bodyUsed: false
headers: Headers
ok: false
status: 0
statusText: ""
type: "opaque"
url:""
都可以SomethingElse
。
如果是这样的话,您将获得something
,因为您正在迭代列表并同时更新它。
因此,concurrentModificationException
无法确定基础iterator
中发生了什么,它会在出现严重错误之前坚持data structure
的政策。
(核心值后跟fail-fast
:读取和写入应妥善处理)
答案 1 :(得分:0)
您的.remove
正在抛出该错误,因为您在迭代时修改了列表。您可以使用ConcurrentHashMap和CopyOnWriteArrayList类来修复此错误。
请参阅链接here以获取有关错误的明确说明。