프로그램에는 동일한 연산이나 코드 블록을 반복적으로 실행하는 경우가 많다. 자바는 반복 연산을 프로그래밍 할 수 있도록 세가지 반복문을 제공한다.
[ for문 ]
for( 초기문 ; 조건식 ; 반복후 작업 ) { .. 작업문 .. }
작업문은 for문이 반복되는 동안 매번 실행되며, 작업문이 하나의 문장인 경우 중괄호가 필요없다. 초기문에서는 대게 for문의 조건식에서 사용하는 변수를 초기화한다. 조건식에는 논리변수나 논리 연산을 사용하며, 조건식의 결과가 true인 경우에 반복이 계속되고 false가 되면 for문을 벗어난다.
-for문 사례
반복후 작업문 에는 다음과같이 콤마로 분리하여 여러 문장을 둘 수 있다.
for( i = 0; i <10 ; i++, System.out.println(i) ) { ...... }
초기문에는 지역변수를 선언하고 바로 사용할 수 있다. 물론 이 변수는 for문 내에서만 사용 가능하다.
for (int i = 0 ; i < 10 ; i++) System.out.println(i);
for문으로 무한반복을 하기위해서는 조건식을 true를 넣거나 조건식자리를 비운다
for( 초기문; (true) ; 반복후 작업 ) { ..... }
[ while문 ]
while(조건식) { ... 작업문 ... }
while문의 조건식은 for문과 동일하다. true인경우 반복이 계속되며, false인 경우 while문을 벗어난다. for문과 달리 조건식이 없으면 컴파일 오류가 발생한다.
[ do-while문 ]
do { ... 작업문 ... } while (조건식) ;
조건식은 while문과 동일하며 조건식이 없으면 컴파일 오류가 발생한다. do-while문은 다른 반복문과 달리 작업문 실행후 반복 조건을 따지므로, 작업문이 최초 한번은 실행된다.
[ 중첩 반복 ]
반복문 안에 다른 반복문을 만들 수 있다. 이것을 중첩 반복 이라고 한다. for문 안에 for문이나 while문을 둘 수도 있고, while문 안에 for, while, do-while문을 둘 수 있다. 반복은 몇번이고 중첩 가능하지만, 너무 많은 중첩 반복은 프로그램 구조를 복잡하게 하므로 이중, 삼중 반복 정도가 적당하다.
반복문 사용시 주의점
반복의 횟수나 범위가 명확한 경우에는 for문을 많이 사용하고, 반복 횟수를 처음부터 알 수 없고, 반복이 진행되면서 조건식의 결과가 달라지는 경우에는 while이나 do-while문을 사용한다. 다만 반복이 진행되면서 무한 반복에 빠지지 않도록 주의해야 한다.
'JAVA > 반복문과 배열 그리고 예외처리' 카테고리의 다른 글
03. 자바의 배열 (0) | 2024.04.11 |
---|---|
02. continue문과 break문 (0) | 2024.04.11 |