4.2.1 switch
- 하나의 조건식으로 많은 경우의수 처리 가능
- 제약조건이 많다.
- if와 달리 초기 참(true)인 조건을 만족해도 switch내부의 나머지 코드전체 실행
switch(조건식){
case 값1:
//조건식 결과가 값1일 경우 수행
case 값2:
//조건식 결과가 값2일 경우 수행
default:
//기본 실행
}
4.2.2 switch문의 실행 순서
- 조건식 계산
- 조건식 결과와 일치하는 case문으로 이동
- 이후 문장 수행
- break이나 switch전체가 끝나면 수행 종료
4.2.3 switch 제약조건
- switch의 조건식 결과는 정수 또는 문자열
- case의 값은 정수 상수만 가능하며 중복되지 않아야 한다.
- case에 일반 변수 사용 불가
final int ONE = 1;
int num, result;
switch(result){
case '1': //문자 리터럴(정수 상수 49와 동일)
case ONE: //변수이지만 위에서 상수(final)로 선언하여 가능
case "YES": //문자열 리터럴. JDK1.7부터 허용
case num: //Error! 변수 불가
case 1.0: //Error! 실수 불가
}
4.2.4 switch 여러 특정 조건 만족
swith(month){
case 3: case 4: case 5:
System.out.println("봄");
break;
}
4.2.5 switch 중첩
- break문을 빼 먹지 않게 조심
switch(gender){
case '1': case '3':
switch(gender){
case '1': break;
case '3': break;
}
}
'자바의 정석 정리' 카테고리의 다른 글
자바의 정석 - 4.4 반복문 while (0) | 2022.06.05 |
---|---|
자바의 정석 - 4.3 반복문 for (0) | 2022.06.05 |
자바의 정석 - 4.1 조건문 if (0) | 2022.06.05 |
자바의 정석 - 3.6 비트 연산자 (0) | 2022.06.04 |
자바의 정석 - 3.5 논리 연산자 (0) | 2022.06.04 |