경우에 따라 switch case 조건문은 if else 코드에 비해서 코드를 깔끔하게 만들 수 있다.
else if 를 많이 사용하면 { } 중괄호가 늘어나서 코드가 길어지고 읽기가 불편한 경우가 있다.
case 문에서는 { } 를 여러번 사용하지 않고 한번의 { } 로 묶을 수 있다. switch case 조건문은 조건문을 탈출하는 break 키워드를 사용해서 제어한다.
<예제>
int menuNumber = 1;
switch(menuNumber) {
case 1:
System.out.println("1번 짜장면");
break;
case 2:
System.out.println("2번 짬뽕");
break;
case 3:
System.out.println("3번 탕수육");
break;
}
간단한 설명을 위해 int 형 변수 menuNumber 를 사용했다. Scanner 클래스를 쓰면 사용자에게 숫자를 입력 받고 메뉴를 고르는 코드로 만들 수 있다.
switch(menuNumber) 의 조건식을 조사하여 해당하는 값을 case에서 찾는다. 맞으면 실행하고 break 문으로 switch문을 탈출한다. 만약 case 값 : 이 없다면 default: 안의 코드를 실행하고 종료한다.
주의할 점은 case 값 : 마다 break 문을 넣어야 한다. break 문을 넣지 않는다면 다음 case : 행으로 넘어가서 break 문을 만날때 까지 실행이 된다. 즉 case 값 : 과 break 문은 하나의 세트로 볼 수 있다.