Java 제어문 Switch문, Switch문의 제약조건, Switch문과 if문 비교
by 볼빵빵오춘기switch문
처리해야 하는 경우의 수가 많을 때 유용한 조건문
순서
1. 조건식을 계산한다.
2. 조건식의 결과와 일치하는 case문으로 이동한다.
3. 이후의 문장들을 수행한다.
4. break문이나 switch문의 끝을 만나면 switch문 전체를 빠져나간다.
참고
Switch문 작성 시 defalut문 생략도 가능하다.
import java.util.Scanner;
public class Hello {
public static void main(String[] args) {
System.out.println("현재 월을 입력하세요.");
Scanner scanner = new Scanner(System.in);
int month = scanner.nextInt();
switch(month) {
case 3:
case 4:
case 5:
System.out.println("spring");
break;
case 6: case 7 : case 8:
System.out.println("summer");
break;
case 9: case 10 : case 11:
System.out.println("fall");
break;
default:
System.out.println("winter");
}
}
}
switch문의 제약 조건
- switch문의 조건식 결과는 정수 또는 문자열이어야 한다.
- case문의 값은 정수 상수(문자 포함), 문자열만 가능하며, 중복되지 않아야 한다. ( 변수는 안된다는 얘기)
int num, result;
final int One = 1;
switch(result){
case '1': // 문자리터럴
case One: // 정수 상수
case "Yes": // 문자열리터럴 JDK 1.7부터 허용
case num: // error. 변수는 불가
case 1.0: // error. 실수도 불가
...
}
switch문과 if문 비교
if-else문은 조건을 계속 수정하면되는데
switch문은 case만 추가하면된다.
그러나 swicth문에는 제약조건이 있다.
쓰고 싶어도 쓸 수 없는 경우가 있다.
만약 if가 너무 많으면 간단하게 switch문으로 변경할 수 없나 생각해보기.
switch문은 if문으로 변경한다면 100퍼 변경이 가능하다.
'👩🏻💻 About 프로그래밍 > Java' 카테고리의 다른 글
Java 반복문 while문, do-while문 (0) | 2023.11.28 |
---|---|
Java 반복문 for문, 중첩 for문 (0) | 2023.07.27 |
Java 제어문 if문, if-else문, if-else if문, 중첩 if문 (0) | 2023.07.26 |
Java 연산자, 피연산자, 연산자의 종류, 결합 규칙, 증감 연산자, 부호 연산자, 형변환 (0) | 2023.07.25 |
Java 타입 간의 형변환 방법 (0) | 2023.07.19 |
블로그의 정보
Hello 춘기's world
볼빵빵오춘기