IT·테크/개발

자바 조건문과 반복문 — if·switch·for·while 흐름 제어

레루루 2026. 7. 23. 20:00
반응형

자바 조건문과 반복문 — if·switch·for·while 흐름 제어

자바 프로그램은 main() 메소드의 위에서부터 아래로 실행하는 흐름을 가집니다. 이 흐름을 개발자가 원하는 방향으로 바꿀 수 있도록 해 주는 것이 흐름 제어문이고, 조건문과 반복문이 여기에 해당합니다.

이 글은 2021년 8월 기준 기록입니다.

조건문은 블록의 실행 여부를 결정한다

if문은 조건식의 결과에 따라 블록 실행 여부를 결정합니다.

if (조건식) {
    실행문;
    실행문;
}

if-else문은 갈림길을 만듭니다. 조건식이 true면 if 블록을, false면 else 블록을 실행합니다.

if (조건식) {
    실행문;
} else {
    실행문;
}

조건이 여러 개라면 if-else if-else문을 씁니다.

if (조건문) {
    실행문;
} else if (조건문) {
    실행문;
} else {
    실행문;
}

if문의 블록 내부에 다시 if문을 넣는 중첩 if문도 가능합니다.

if (조건문) {
    if (조건문) {
        실행문;
    } else {
        실행문;
    }
    실행문;
} else {
    실행문;
}

switch문에서 break를 빠뜨리면 아래로 흘러내린다

switch문은 변수 값에 따라 실행문이 선택되는 구조입니다.

switch (변수) {
    case 값1 :
        실행문;
        break;
    case 값2 :
        실행문;
        break;
    case 값3 :
        실행문;
        break;
    default :
        실행문;
        break;
}

여기서 break;는 장식이 아닙니다. break;가 없으면 조건을 만족하는 case 아래쪽의 모든 case가 실행됩니다. 조건에 맞는 자리를 찾아 들어간 뒤 멈추지 않고 그대로 흘러내리기 때문에, 의도하지 않았다면 각 case마다 break;를 붙여야 합니다.

반복문 세 가지는 조건을 언제 보느냐로 갈린다

for문은 초기화식, 조건식, 증감식을 한 줄에 모아 둔 구조입니다. 반복 횟수가 정해진 경우에 자연스럽습니다.

for(초기화식; 조건식; 증감식 ) {
    실행문;
}

while문에는 조건식만 존재합니다.

while(조건식) {
    실행문;
}

do-while문은 실행문을 먼저 실행시키고 나서 조건을 비교합니다. 즉 조건이 처음부터 거짓이더라도 블록이 한 번은 실행됩니다.

do {
    실행문;
} while(조건식);

중첩 반복문에서 break는 가장 가까운 하나만 끝낸다

break문은 반복문의 실행을 중지할 때 사용합니다. 여기서 자주 걸리는 지점이 중첩입니다. 반복문이 중첩되어 있을 경우 break문은 가장 가까운 반복문만 종료시킵니다. 바깥쪽 반복문까지 종료시키려면 바깥쪽 반복문에 이름(라벨)을 붙이고 break 이름;을 사용하면 됩니다.

 

continue문은 반복을 끝내는 것이 아니라 이번 회차만 건너뜁니다. 블록 내부에서 continue문이 실행되면 for문의 증감식, 또는 while문·do-while문의 조건식으로 이동합니다.

 

조건문은 갈 곳을 고르고, 반복문은 같은 자리를 다시 돌며, break와 continue는 그 반복 안에서 빠져나갈 문을 냅니다. 흐름 제어문은 이 세 역할의 조합입니다.

반응형