我有一個問題困擾了我一段時間。我有一個軟件,可以在物理世界中生成一定數量的對象,並將它們存儲在ArrayList中。但是,當從ArrayList中移除對象時,此實現會產生滯後。ArrayList.remove()誘發延遲
靜態數組的實現不會導致滯後,但不太實用,因爲我不能使用「add」和「remove」。
我假設ArrayLists的滯後是由於內存釋放和重新分配。由於我的ArrayList具有固定的最大大小,是否可以預先分配一個特定的內存,以避免這些問題?還是有另一種解決方案呢?
非常感謝您的幫助!
將元素添加到List時,只需將對該對象的引用放置到List中即可。我認爲這不會造成任何麻煩。也許問題在於構建你的對象? – iozee
「靜態數組實現」是什麼意思? –
你可以顯示你使用的代碼嗎?我相信一個ArrayList使用預先確定大小的backing數組 –