내 안드로이드 게임을 프로파일 링하고를보고 놀랐 해요 :리스트 반복자가 힙 할당을 유발합니까?
for(O o : myArrayList)
{
}
는 힙 할당의 무리를 작성합니다.
루프에 숫자 i++
을 사용하는 것 외에이 문제를 해결하는 더 좋은 방법이 있습니까? 내 반복자 나 다른 것을 미리 할당 할 수 있습니까? 이 패턴을 사용하는 경우
for(Iterator<O> iter = myArrayList.iterator(); iter.hasNext();)
{
O o = iter.next();
}
이 그래서 반복자 객체가 힙에 할당하기됩니다
아니요, 성능 저하가 없습니다. http://stackoverflow.com/questions/256859/is-there-a-performance-difference-between-a : [1] [1] [응답]을 보라 for-for-each-loop –
성능에 관심이 없기 때문에 게임에서 가비지 수집기를 피하려고합니다. – jmasterx