Menu
Coddy logo textTech

Switch Statement

Coddy Java 여정의 기초 섹션에 포함된 레슨 — 73개 중 29번째.

switch 문은 다중 분기 if 문과 같습니다. 단일 조건을 평가하는 대신, 변수의 값을 여러 케이스와 비교하여 일치하는 케이스와 연관된 코드를 실행합니다.

다음은 switch 문의 기본 구조입니다:

switch (variable) {
    case value1:
        // variable이 value1과 같을 때 실행할 코드
        break;
    case value2:
        // variable이 value2와 같을 때 실행할 코드
        break;
    // ... 더 많은 case
    default:
        // 일치하는 case가 없을 때 실행할 코드
}
  • switch 키워드는 테스트할 변수를 괄호 안에 따라다닙니다.
  • case는 변수의 가능한 값 하나를 나타냅니다.
  • 변수가 해당 case의 값과 일치하면 각 case 안의 코드가 실행됩니다.
  • break 문은 매우 중요합니다; 케이스가 실행된 후 switch를 종료합니다. 이를 사용하지 않으면 실행이 다음 케이스로 "fall through"됩니다.
  • default 케이스는 선택 사항이며 다른 케이스가 일치하지 않을 때 실행됩니다.

다음은 예제입니다:

int day = 3;
String dayName;

switch (day) {
    case 1:
        dayName = "Monday";
        break;
    case 2:
        dayName = "Tuesday";
        break;
    // ... cases for other days
    default:
        dayName = "Invalid day";
}

또한 여러 case를 하나로 결합할 수도 있습니다:

int day = 3;
String dayName;

switch (day) {
    case 1:
    case 2:
    case 3:
        dayName = "Start of week";
        break;
    // ... cases for other days
    default:
        dayName = "Invalid day";
}
challenge icon

챌린지

초급

월 번호(1은 1월, 2는 2월 등)를 입력받아 해당하는 계절을 출력하는 프로그램을 작성하세요. 로직에 switch 문을 사용하세요.

계절과 해당 월은 다음과 같습니다:

  • Winter: 12월 (12), 1월 (1), 2월 (2)
  • Spring: 3월 (3), 4월 (4), 5월 (5)
  • Summer: 6월 (6), 7월 (7), 8월 (8)
  • Autumn: 9월 (9), 10월 (10), 11월 (11)

다른 월 번호의 경우 "Invalid month"을 출력하세요.

치트 시트

switch 문은 변수가 여러 case에 대해 검사하는 다중 분기 조건문입니다:

switch (variable) {
    case value1:
        // 변수가 value1과 같을 때 실행할 코드
        break;
    case value2:
        // 변수가 value2와 같을 때 실행할 코드
        break;
    default:
        // case가 일치하지 않을 때 실행할 코드
}

주요 구성 요소:

  • case: 변수의 가능한 값을 나타냅니다
  • break: case가 실행된 후 switch를 종료합니다 (fall-through 방지)
  • default: 다른 case가 일치하지 않을 때 실행되는 선택적 case

여러 case를 결합할 수 있습니다:

switch (day) {
    case 1:
    case 2:
    case 3:
        dayName = "Start of week";
        break;
    default:
        dayName = "Invalid day";
}

직접 해보기

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int month = scanner.nextInt();
        String season = "";
        
        // 아래에 코드를 작성하세요
        
        
        System.out.println(season);
    }
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨