[JAVA] switch 문

switch 문의 역할

switch 문은 하나의 변수나 식의 값에 따라 다양한 분기 처리를 효과적으로 다루는 제어문입니다. 여러 개의 가능한 값을 비교하여 해당하는 분기를 실행하는데 사용됩니다.

 

switch 문의 구조

switch (변수 또는 식) {
    case 값1:
        // 값1에 해당하는 코드 블록
        break;
    case 값2:
        // 값2에 해당하는 코드 블록
        break;
    // 추가 case 문
    default:
        // 모든 case에 해당하지 않을 때 실행되는 코드 블록
}

 

switch 문의 활용

switch 문은 특정 변수나 식의 값을 여러 경우와 비교할 때 유용합니다. 변수의 값이 일치하는 case 블록을 찾아 해당하는 코드를 실행하며, 일치하는 값이 없는 경우 default 블록이 실행됩니다.

 

주의사항

1. switch 문은 정수형, 문자형, 문자열 또는 열거형(enum)의 값을 사용하여 분기 처리합니다.

2. switch 문에서는 부동소수점, boolean 값, 객체(reference) 등을 비교 연산자로 사용할 수 없습니다.

 

switch 문의 예제

public class Example {
    public static void main(String[] args) {
        int dayOfWeek = 3;

        switch (dayOfWeek) {
            case 1:
                System.out.println("Monday");
                break;
            case 2:
                System.out.println("Tuesday");
                break;
            case 3:
                System.out.println("Wednesday"); // 출력
                break;
            case 4:
                System.out.println("Thursday");
                break;
            case 5:
                System.out.println("Friday");
                break;
            default:
                System.out.println("Weekend");
        }
    }
}

break 문이 없는 예제

public class Example {
    public static void main(String[] args) {
        int dayOfWeek = 3;
		
        // case 3부터 break문이 없으므로 순차적으로 실행됨
        switch (dayOfWeek) {
            case 1:
                System.out.println("Monday");
            case 2:
                System.out.println("Tuesday");
            case 3:
                System.out.println("Wednesday"); //출력
            case 4:
                System.out.println("Thursday"); //출력
            case 5:
                System.out.println("Friday"); //출력
                break;
            case 6:
                System.out.println("Saturday");
            case 7:
                System.out.println("Sunday");
            default:
                System.out.println("Invalid day");
        }
    }
}

case 블록이 여러 개 예제

public class Example {
    public static void main(String[] args) {
        int dayOfWeek = 5;

        switch (dayOfWeek) {
            case 1:
            case 2:
            case 3:
            case 4:
            case 5:
                System.out.println("Weekday"); // 출력
                break;
            case 6:
            case 7:
                System.out.println("Weekend");
                break;
            default:
                System.out.println("Invalid day");
        }
    }
}

'JAVA > 자바 기본 문법' 카테고리의 다른 글

[JAVA] for 문과 향상된 for 문  (0) 2023.08.10
[JAVA] while 문과 do-while 문  (0) 2023.08.10
[JAVA] if 문과 else 문  (0) 2023.08.10
[JAVA] 삼항 연산자  (0) 2023.08.10
[JAVA] 대입 연산자, 증감 연산  (0) 2023.08.10