자바 1.5부터 제네릭 기능을 지원한다. 그래서.. 새로운 for 문이 하나 생겼다.
현재 회사에서 자바 1.4를 사용해서.. 1.5로 작성된 부분을 수정하기 위해 이러저리 찾아보니 네이버에 아래 내용이 있었다.
----------------------------------------------------------------------------------------------------
만약에 int locationEle [] = new int[10]; 이라는 배열을 하나 선언해두고 반복문을 돌리고자 하면
for(int i=0 ; i<locationEle.length ; i++){
int ele = locationEle[i];
}
이러한 식으로 작성을 해야 하지만 1.5에서 추가된 향상된 for문 같은 경우는 다음과 같이 작성이 가능합니다.
for (int ele : locationEle) {}
int ele : 배열에 들어있는 한 원소의 값을 저장해 둘 변수를 선언. 매번 순환문이 반복될때마다 이변수(ele) 에 배열 원소의 값이 대입됩니다. 이 순환문은 더이상 남아 있는 원소가 없게 될때 까지 또는 break가 실행될 때까지 반복됩니다.
: --> 콜론(:)은 왼쪽에 있는 변수에 오른쪽에 있는 것의 각원소의 값이 대입된다는 것을 뜻합니다. 즉 locationEle 에 들어있는 모든 int 값에 대해서 순환문을 돌린다고 보면 되죠.
locationEle : 이 for 문에서 순환문을 돌릴 대상이 되는 배열, 매번 순환문이 반복될때마다 배열에 들어있는 다음 원소가 "ele"이라는 변수에 대입 됩니다.
for 순환문의 종류
for (int i=0 ; i<10 ; i++){
//여기있는 코드를 열번 반복
}
이런 형식의 for 구절로도 어떤 순환문이 든 돌릴수 있습니다. 하지만 자바 5.0부터 배열 (또는 기타 컬렉션)의 원소들에 대해서 반복작업을 하고 싶을때 쓸수 있는 '향상된 for 순환문' 이 등장했습니다. 물론 배열의 모든 원소에 대해서 반복 작업을 할때 기존 for 순환문을 써도 되지만 향상된 for 순환문을 쓰면 더 쉽게 작성이 가능하다는 것입니다.
----------------------------------------------------------------------------------------------------