스위치문(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를 적을 필요가 없습니다.