JAVA

자바 조건문 — 갈림길 만들기(IF·SWITCH)

PANCO_IT
#자바#JAVA#if문#switch

숲속 갈림길과 방향 표지판

이미지 출처: Pexels (han-chieh-lee) · Pexels License

지난 편에서 비교·논리 연산의 결과가 **참(true)/거짓(false)**으로 나온다고 했습니다. 이 참·거짓으로 프로그램이 길을 고르게 하는 것이 오늘의 주제, 조건문입니다.

if — 참일 때만 실행합니다

if 뒤 괄호 안이 참이면 블록을 실행하고, 거짓이면 건너뜁니다.

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

쉽게 — if문지기입니다. "19세 이상입니까?"를 통과한 사람만 안으로 들여보냅니다. 조건이 거짓이면 문 안 코드는 아예 실행되지 않습니다.

if-else — 참이면 A, 아니면 B

양 갈래로 나뉩니다.

int age = 15;
if (age >= 19) {
    System.out.println("성인입니다.");
} else {
    System.out.println("미성년자입니다.");
}

else if — 갈래가 여럿일 때

조건을 위에서부터 차례로 검사하고, 처음 참이 되는 하나만 실행합니다.

int score = 85;
if (score >= 90) {
    System.out.println("A");
} else if (score >= 80) {
    System.out.println("B");   // 여기 실행
} else {
    System.out.println("C");
}

switch — 값이 딱 정해진 갈래

값이 몇 가지로 딱 떨어질 때switch가 깔끔합니다. 등수로 메달 색을 정하는 예입니다.

int ranking = 2;
switch (ranking) {
    case 1:
        System.out.println("금메달");
        break;
    case 2:
        System.out.println("은메달");   // 여기 실행 후 탈출
        break;
    case 3:
        System.out.println("동메달");
        break;
    default:
        System.out.println("메달 없음");
}

쉽게 — switch번호표 창구입니다. 손님의 번호(값)에 맞는 창구(case)로 곧장 보냅니다.

단골 함정 — switch에서 break를 빼먹으면

case마다 끝에 **break**가 있어야 그 창구에서 일을 마치고 빠져나옵니다. break를 빼먹으면, 일치한 case 아래의 case들이 줄줄이 함께 실행됩니다(폴스루).

int ranking = 1;
switch (ranking) {
    case 1:
        System.out.println("금메달");
    case 2:
        System.out.println("은메달");   // break가 없어서 여기까지 실행됨!
        break;
}
// 출력: 금메달 / 은메달  (원치 않은 결과)

switch break 비교: break 없으면 아래 case로 줄줄이 흘러 폴스루, break 있으면 즉시 탈출해 의도한 결과

규칙 — 특별한 의도가 없다면 모든 case마다 break를 꼭 붙입니다. 이걸 놓쳐서 생기는 버그가 초보에게 아주 흔합니다.

한 장 정리

상황문법
참일 때만if
참/거짓 두 갈래if ~ else
여러 갈래(범위)if ~ else if ~ else
값이 딱 정해진 갈래switch ~ case (+ break)

이것만 기억하면 됩니다. if는 참일 때만 들여보내는 문지기, else if는 위에서부터 처음 참인 하나만, switch는 정해진 값별 창구입니다. 그리고 switchcasebreak를 꼭 붙입니다.

미니 퀴즈

개념을 제대로 잡았는지 직접 풀어 봅니다. 정답은 눌러야 나옵니다.

미니 퀴즈

OX 2문제 + 4지선다 2문제


포켓코딩(JAVA1) 6편 · 예제 출처: 강사 개인 GitHub 저장소. 다음 편: 반복문 — 똑같은 일 여러 번(FOR·WHILE).

PANCO_IT

IT 지식을 정리하는 개발자

관련 글