假設我正在刪除名爲「Enemy」的「死」對象。Java,確保從arrayList中刪除對象時正在刪除對象
使用這樣的事情:
for(int i = 0; i < enemies.size(); i++)
{
Enemy en = (Enemy) enemies.get(i);
if(en.getVisible() == true)
en.update();
else
enemies.remove(i);
}
是否得到對象從ArrayList中被移除之後刪除?還是「應該」呢?我一直主要在做C++代碼,垃圾收集令我困惑。
任何方式我可以看到對象是否被垃圾收集器刪除或不是?
感謝
在java中,您不必擔心這些情況。垃圾收集器照顧這個。 – 2013-03-27 05:41:23
不,他們不會被刪除,你會得到'ConcurrentModificationException' :) – 2013-03-27 05:42:14
是的。我就是這麼說的。 Thanks @ denis.solonenko ...梅森你甚至運行過這段代碼嗎? – SRy 2013-03-27 05:42:47