for 루프와 for-each 루프의 성능 비교
프로그래밍에서는 코드 성능 최적화가 중요합니다. 객체 목록을 반복할 때 개발자는 일반적으로 전통적인 for 루프와 for-each 루프 사용 사이에서 딜레마에 직면합니다.
다음 두 루프를 고려하세요.
for (Object o : objectArrayList) { o.DoSomething(); }
for (int i=0; i<objectArrayList.size(); i++) { objectArrayList.get(i).DoSomething(); }
어떤 루프가 더 빠르게 수행됩니까?
Effective Java의 항목 46에 따르면 Joshua Bloch, 두 루프 간에는 눈에 띄는 성능 차이가 없습니다. 실제로 for-each 루프는 특정 시나리오에서 for 루프보다 성능이 약간 더 뛰어날 수 있습니다.
for-each 루프는 반복자 또는 인덱스 변수를 숨겨 상용구 코드와 잠재적인 오류를 제거합니다. "for Each element e in elements"로 읽는 구문은 코드 가독성을 단순화합니다.
또한 Bloch는 for-each 루프가 배열 인덱스의 한계를 한 번만 계산하므로 잠재적인 성능 저하가 제거된다는 점에 주목합니다. 수동으로 작성된 for 루프에 병목 현상이 있습니다.
위 내용은 For 루프와 For-Each 루프: Java에서 반복할 때 어느 것이 더 빠릅니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!