Back-End/Java

04. 제어 흐름(Control Flow)

Yerin Thea Yoo 2026. 2. 11. 22:52

프로그램은 위에서 아래로 순차적으로 실행된다.

하지만 모든 로직이 항상 같은 방식으로 실행되지는 않는다.

 

특정 조건에 따라 실행을 분기하거나, 같은 작업을 여러 번 반복해야 하는 경우가 있다.

 

이처럼 코드의 실행 순서를 제어하는 구조를 제어 흐름이라고 한다.

Java에서 제어 흐름은 크게 두 가지로 나뉜다.

  1. 조건문
  2. 반복문

1. 조건문(Conditional Statement)

조건문은 특정 조건이 참인지 여부에 따라 실행 흐름을 나누는 구조다.

1) if문

가장 기본적인 조건문이다.

if (조건식) {
    실행문
}

조건식이 true일 때만 실행된다.

int age = 20;

if (age >= 19) {
    System.out.println("성인입니다.");
}

 

2) if - else

조건이 거짓일 경우 실행할 코드를 지정할 수 있다.

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

 

3) if - else if - else

여러 조건을 순차적으로 검사할 수 있다.

if (score >= 90) {
    System.out.println("A");
} else if (score >= 80) {
    System.out.println("B");
} else {
    System.out.println("C");
}

위에서부터 조건을 검사하며, 처음으로 true가 되는 블록만 실행된다.

 

4) Switch문

값 하나를 여러 경우와 비교할 때 사용한다.

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

switch (menu) {
    case 1:
        System.out.println("아메리카노");
        break;
    case 2:
        System.out.println("라떼");
        break;
    default:
        System.out.println("기타 메뉴");
}

Switch는 특정 값과 정확히 일치하는 경우를 처리할 때 적합하다.

 

2. 반복문(Loop Statement)

반복문은 같은 코드를 여러 번 실행해야 할 때 사용하는 구조다.

1) for문

반복 횟수가 명확할 때 주로 사용한다.

for (초기식; 조건식; 증감식) {
    실행문
}
for (int i = 0; i < 5; i++) {
    System.out.println(i);
}
  • 초기식 → 시작 값 설정
  • 조건식 → 반복 여부 판단
  • 증감식 → 반복마다 값 변경

 

2) while문

조건이 참인 동안 반복한다.

while (조건식) {
    실행문
}
int i = 0;

while (i < 5) {
    System.out.println(i);
    i++;
}

반복 횟수가 명확하지 않을 때 적합하다.

 

3) do - while문

최소 한 번은 실행된다.

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

조건을 나중에 검사한다는 점이 while문과 다르다.

 

3. 반복 제어 키워드

1) break

반복문을 즉시 종료한다.

if (i == 3) {
    break;
}

2) continue

현재 반복만 건너뛰고, 다음 반복으로 넘어간다.

if (i == 3) {
    continue;
}