0
我有下面的代碼片段:Android的垃圾收集對象
ArrayList<GameObject> gameObjectList = new ArrayList<GameObject>();
public void init(){
for(int i=0; i<10; i++) {
loadedOjectList.add(new GameObject());
}
}
現在說我要離開這個活動也許加載在我的遊戲一個新的水平。編寫loadedObjectList.clear()
是否足以使10個對象有資格進行垃圾回收?我有類似的東西,每當我通過關卡進展時,我的遊戲就會開始放慢速度,因爲我猜測對象仍然存在。有任何想法嗎?
理論上它應該記住容量不會改變,從而使後備陣列的大小保持不變。如果需要,GC也會啓動。 – GiantTree
ArrayList被清除之後,如果我第二次調用init(),那麼add()方法會將對象放在索引0到9還是將索引10放到19? –
大小將被報告爲0,並且所有新對象將從索引開始的0開始添加。只是沒有刪除支持數組,只是爲空。 – GiantTree