switch 문에 의해 허용되는 fall throughcase
메커니즘을 사용하여 동일한 문 에서 여러 조건을 그룹화 할 수 있습니다. 이는 Java 자습서 에서 언급 되고 섹션 §14.11에 완전히 지정되어 있습니다 . 스위치 문 의 Java 언어 사양 .
다음 코드 스 니펫은 자습서의 예제에서 가져온 것으로, 매월 일 수를 계산합니다 (1 개월부터 12 개월까지 번호 지정).
switch (month) {
case 1: case 3: case 5:
case 7: case 8: case 10:
case 12:
numDays = 31;
break;
case 4: case 6:
case 9: case 11:
numDays = 30;
break;
case 2:
if (((year % 4 == 0) &&
!(year % 100 == 0))
|| (year % 400 == 0))
numDays = 29;
else
numDays = 28;
break;
default:
System.out.println("Invalid month.");
break;
}
보시다시피 단일 case
명령문 에서 값 범위를 다루는 유일한 대안은 가능한 값을 하나씩 하나씩 나열하는 것입니다. 추가 예로서 다음은 질문에서 의사 코드를 구현하는 방법입니다.
switch(num) {
case 1: case 2: case 3: case 4: case 5:
System.out.println("testing case 1 to 5");
break;
case 6: case 7: case 8: case 9: case 10:
System.out.println("testing case 6 to 10");
break;
}