BackEnd/Java

[JAVA] for문 리팩토링하기(List)

꾹꾹이 2022. 9. 4.
728x90

JAVA에서 반복문을 사용할 때 for문이나 for-each문을 사용한다.

for문과 for-each문 중 어떤 것을 사용하는 것이 더 빠를까?

 

실제로 실험해본 결과 

 

ArrayList, Array => for문 win

LinkedList => for-each문 win

 

이라는 결과가 나왔다.

따라서 ArryaList/Array를 사용할 경우 for문을, LinkedList를 사용할 경우 for-each문을 사용하는 것이 속도 개선에 좋은 영향을 준다!

 

 

그런데 for-each문의 단점은 인덱스를 사용할 수 없다는 것이다.

인덱스가 꼭 필요하다면?

1
2
3
4
5
6
7
static <T> void main(List<T> list){
    int i = 0;
    for(T s : list){
        //개발자가 작성한 코드
        i++;
    }
}
cs

변수를 이용하여 해결할 수 있다.

 

 

 

댓글