我不明白爲什麼這個方法拋出一個異常:奇怪ConcurrentModificationException的行爲
public void add(Object obj){
gameObjects.add(obj); //here the exception happens
}
...而這一次沒有:
public void add(Object obj){
gameObjects.add(obj); // no exception actually happens here
gameObjects.remove(obj);
}
爲什麼會發生這種情況,考慮是它是一個運行時異常?
例外:
Exception in thread "Thread-0" java.util.ConcurrentModificationException
at java.util.ArrayList$Itr.checkForComodification(Unknown Source)
at java.util.ArrayList$Itr.next(Unknown Source)
at threads.Main.tick(Main.java:181)
at threads.Main.run(Main.java:104)
的方法被稱爲用於物體內部的蜱方法。
gameObjects
不爲空:
List<Object> gameObjects = new ArrayList<Object>(128);
這是不是足夠的信息。首先,什麼是例外。此外,這些電話的上下文是什麼?誰調用代碼以及如何? –
gameObjects是什麼類型? – Cemafor
什麼是'gameObjects'?它是否爲空? – NINCOMPOOP