[java] for each문 사용법
for each문 사용법
java1.5 이상 부터 사용할 수 있는 for each에 대해 알아보겠다.
for each는 기존 for문 보다 타이핑양이 적고 복잡하게 보이지 않기 때문에
프로그램 및 유지보수 하는데 많은 도움이 될 것이다.
for each라고 설명 했지만 기존의 for문과 동일한 예약어를 사용한다.
for VS for each |
이해를 돕기 위해 기존 for문과 비교해서 설명 하도록 하겠다.
|
for |
for each |
사용법 |
for( 초기 값; 종료되는 조건 ; 값의 증감) { 반복 수행할 작업 } |
for( 각 요소 값 : 배열이나 컨테이너 값 ) { 반복 수행할 작업 } |
예제 |
String[] name = {"KIM","JACK","LEE","DACUYA"}; for( int i = 0; i < name.length ; i++ ) { System.out.println("name is "+name[i] ); } |
String[] name = {"KIM","JACK","LEE","DACUYA"}; for( String Nm : name ) { System.out.println("name is "+Nm ); } |
위와 같이 배열의 값을 이용할 때 for each를 사용하면 코딩양이 적어지고 그만큼 코드가 직관적으로 작성 되어 가독성도 뛰어나게 된다.
for each 사용법 |
사용방법은 다음과 같다.
for( 각 요소 값 : 배열이나 컨테이너 값 ) { 반복 수행할 작업 } |
for문은 다음과 같이 쓸 수 있다.
String[] name = {"KIM","JACK","LEE","DACUYA"}; for( String Nm : name ) { System.out.println("name is "+Nm ); } System.out.println("END"); |
위에 예제는 배열을 이용 했지만 Vector, List등도 사용 가능 하다.
for문 부분 설명
for( String Nm : name ) | name 배열의 각 요소 값을 순차적으로 Nm에 전달 한다. |
for( String Nm : name ) | name은 iterator 즉 배열이나 컨테이너등 여러 데이터가 담겨져 있는 변수다. |
for문의 수행 결과
횟수 | 출력 결과 | 설명 |
1 | name is KIM | name의 배열 값 수는 총 4개이다. 그래서 for문은 총 4회 수행 되며 처음 수행 될 때 배열 값의 첫 번째 값인 KIM이 Nm에 전달 된다. |
2 | name is JACK | KIM 값 다음인 JACK이 Nm에 전달되어 출력 한다. |
3 | name is LEE | JACK 값 다음인 LEE 이 Nm에 전달되어 출력 한다. |
4 | name is DACUYA | LEE 값 다음인 DACUYA 이 Nm에 전달되어 출력 한다. |