반응형

int[] arr = {1, 2 ,3, 4,5};의 배열을 가지고 배열의 요소들 각각을 모두 출력하고자할때

일반적으로 우리가 알고 있는 for문의 형태는 다음과 같다.

for (i = 0; i < arr.length; i++) {
	System.out.println(arr[i]);
}

 

그러나 위의 for문을 enhanced for문으로 구현하면 다음처럼 표현할 수 있다.

for (int n : arr) { // for(배열의 값을 대입받을 변수정의 : 변수에 값을 넣을 배열)
	System.out.println(n); // for문의 내용
}

 

세부적인 동작은 다음과 같으면 즉 n=arr[];의 연산인 숨겨져있다고 할수있다.

for (int n : arr) {

	n = arr[0]; // 이후 arr[1], arr[2] ..... 같은 연산을 반복한다.
	System.out.println(n);

}

 

한마디로 말하면 꺼낼 값이 없을때까지 arr배열의 값들을 하나씩 꺼내어 n이란 변수에 대입하여 for문의 내용을 수행한다.

 

enhanced for문은 변수의 값을 참조하기엔 편리하다는 장점이 있지만,  값을 수정할 수 없는 단점이 있다.

따라서 값의 변경이 필요없을때만 사용하자!

반응형

+ Recent posts