심심한잉여의 잡동사니

JAVA - 향상된 for문이 기존 for문보다 성능이 좋다? 본문

코딩일기/Java

JAVA - 향상된 for문이 기존 for문보다 성능이 좋다?

심심한잉여 2021. 10. 13. 23:16
반응형

JDK 5.0버전부터 사용이 가능한 향상된 for문

사용 방법은 아래와 같다.

for(객체 변수명 : 값을 가져올 List or Array){
	Sysout.Out.Println(변수명.toString())
}

위 코드는 해당 객체에 대해 값을 가져올 반복문이다.
위 코드와 같이 작성을 하게 된다면 안에 들어있는 객체를 변수명에 맞춰 가져오게되는 순회를 진행한다.
따라서 이 코드 안에
String이 10개 들어있는 List가 있다면
String을 10번 가져오는 반복문이 된다는 것이다.

그리고 이 글의 가장 큰 문제는 향상된 for문이 기존 for문보다 성능이 좋냐는 문제이다.

많은 사람들이 말하기로는 크게 차이는 없다고 한다.
이는 다른 사람의 블로그를 통해 테스트 해본사람의 말을 봤을 때 차이는 없었다고 했다.

따라서 "성능 차이는 없다." 가 결과이다.

근데 왜 쓰느냐?

가독성이 좋고 짤 때 간편하기 때문이다.

하지만, 인덱스 값을 사용 못하기 때문에 상황에 따라 인덱스 값이 필요하면 일반 for문을 사용하는 것으로 결론 지을 수 있을 것 같다.

따라서 해당 list나 배열을 순회하면서 값만 따로 받아야하는 경우에 쓰면 좋을 것으로 판단된다.

오늘도 궁금했던 for문의 성능차이를 해결했다.

반응형