ガベージ コレクションが原因で、ゲームで一時的な中断やフレームのドロップが発生することがあります。そのため、不要な割り当てを削除することでこれを削減しようとしています。
Eclipse で割り当てトラッカーを使用すると、以下のコードが表示されます。
for (IGameObject obj : mObjects) {
//stuff
}
イテレータを割り当てています:
java.util.ArrayList$ArrayListIterator 24 bytes java.util.ArrayList iterator
mObjects はArrayList
.
興味深いことに、proguard または jit は何らかの方法でこれを基本的なfor
ループに最適化しますか? 残念なことに、この割り当てを避けるためにコードをより冗長にする必要があります。