> Java > java지도 시간 > For 루프와 For-Each 루프: Java에서 반복할 때 어느 것이 더 빠릅니까?

For 루프와 For-Each 루프: Java에서 반복할 때 어느 것이 더 빠릅니까?

Linda Hamilton
풀어 주다: 2024-12-17 06:19:24
원래의
663명이 탐색했습니다.

For Loop vs. For-Each Loop: Which is Faster for Iterating in Java?

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿