1 분 소요

스위치문(Switch Statements)

  • 스위치문을 통해 많은 코드 블록 중에 하나만 실행 시킬 수 있습니다.
    switch(표현/변수) {
      case x:
          // 코드 블록
          break;
      case y:
          // 코드 블록
          break;
      default:
          // 코드 블록
    }
    
  • 실행 되는 순서
    • switch의 표현/변수는 딱 한번만 실행됩니다.
    • switch의 표현/변수을 case의 값과 비교합니다.
    • 그중에 값이 맞다면 해당 코드 블록을 실행합니다.
    • case안에서 실행되었다면 break를 통해 switch문을 멈추거나 case과 값이 맞지 않다면 default로 가서 실행을 하고 switch를 끝냅니다.
  • 예시
    int day = 4;
    switch (day) {
      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;
      case 6:
          System.out.println("Saturday");
          break;
    case 7:
          System.out.println("Sunday");
          break;
    }
    // 결과: "Thursday"
    

브레이크(break)

  • 스위치문 안에서 break라는 것이 사용되는데 해당 break를 통해 스위치문을 탈출 할 수 있습니다.
  • 예시
    int day = 4;
    switch (day) {
      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;
      case 6:
          System.out.println("Saturday");
          break;
      case 7:
          System.out.println("Sunday");
          break;
    }
    /* 결과: "Thursday"
           "Friday"
           "Saturday" */
    

디폴트(default)

  • default는 case와 하나도 맞지않을 경우에 실행됩니다.
  • 예시
    int day = 4;
    switch (day) {
    case 6:
      System.out.println("Saturday");
      break;
    case 7:
      System.out.println("Sunday");
      break;
    default:
      System.out.println("헬오픈");
    }
    // 결과: "헬오픈"
    
  • default는 switch문의 맨 마지막에 있음으로 break를 적을 필요가 없습니다.