728x90
기본 구조
switch (변수 or 식) {
case 값1:
// 값1일 때 실행할 코드
break;
case 값2:
// 값2일 때 실행할 코드
break;
...
default:
// 어느 case에도 해당되지 않을 때 실행
}
예제 1: 요일 출력기
int day = 3;
switch (day) {
case 1:
System.out.println("월요일");
break;
case 2:
System.out.println("화요일");
break;
case 3:
System.out.println("수요일");
break;
case 4:
System.out.println("목요일");
break;
case 5:
System.out.println("금요일");
break;
default:
System.out.println("주말 또는 잘못된 입력입니다.");
}
출력 결과: 수요일
break를 꼭 써야 하는 이유
- 각 case 블록의 끝에 break가 없으면 **다음 case로 '넘어가서 실행'**됩니다.
int num = 1;
switch (num) {
case 1:
System.out.println("One");
case 2:
System.out.println("Two");
}
출력:
One
Two
해결: break; 추가!
예제 2: 문자형, 문자열도 사용 가능
char grade = 'B';
switch (grade) {
case 'A':
System.out.println("매우 우수");
break;
case 'B':
System.out.println("우수");
break;
case 'C':
System.out.println("보통");
break;
default:
System.out.println("재시험");
}
String도 지원됨 (Java 7 이상)
String command = "start";
switch (command) {
case "start":
System.out.println("시작합니다.");
break;
case "stop":
System.out.println("중지합니다.");
break;
default:
System.out.println("알 수 없는 명령어입니다.");
}
switch vs if 비교
상황 | 추천 문 |
조건이 많고, 값이 정해져 있을 때 | switch |
범위 비교(예: 0 < x < 10) | if-else |
문자열/숫자 값이 정확히 일치할 때 | switch |
복잡한 조건식 필요 | if-else |
마무리 요약
키워드 | 설명 |
switch | 여러 값 중 하나를 기준으로 분기 |
case | 각각의 조건 값 지정 |
break | 각 조건 종료 (없으면 다음 case까지 실행됨) |
default | 모든 조건에 해당하지 않을 때 실행 |
실습 아이디어
- 메뉴 선택 (1: 조회, 2: 추가, 3: 삭제...)
- 요일/월 입력 → 한글로 출력
- 학점 입력 → 평가 메시지 출력
LIST
'JAVA > 자바 문법 기초 익히기' 카테고리의 다른 글
break, continue 사용법 (0) | 2025.04.12 |
---|---|
for, while, do-while 반복문 (0) | 2025.04.12 |
if, else if, else (0) | 2025.04.12 |
증감 연산자 (0) | 2025.04.12 |
논리 연산자 (0) | 2025.04.12 |