개발천재

[JAVA] Switch/Case 조건판단문 본문

개발 준비/JAVA

[JAVA] Switch/Case 조건판단문

세리블리 2024. 12. 2. 11:02
반응형

switch/case문

switch/case 문은 if 문과 비슷하지만 좀 더 일정한 형식이 있는 조건·판단문이다. 여러 조건을 간단히 처리할 때 사용한다.  if/else 문과 비슷한 구조이긴 하지만 값의 비교가 많을 경우 더 간결하게 작성할 수 있고 코드의 가독성을 높일 수 있다.

switch (조건값) {
    case 값1:
        // 값1에 해당하는 코드 블록
        break;
    case 값2:
        // 값2에 해당하는 코드 블록
        break;
    ...
    default:
        // 어떤 case에도 해당하지 않을 때 실행되는 코드
}

 

조건값과 일치하는 case 입력값(입력값1, 입력값2, …)이 있다면 해당 case 문에 속한 문장들이 실행된다. case 문마다 break라는 문장이 있는데 해당 case 문을 실행한 뒤 switch 문을 빠져나가기 위한 것이다. 만약 break 문을 생략하면 그 다음의 case가 실행되는데 이를 fall-through 라고 한다.

 

default는 넣어도 되고 안넣어도 된다. 조건 값이 어떤 case에도 해당되지 않을 때 default가 실행된다.

 

 

switch/case 문 예시

public class SwitchTest {
    public static void main(String[] args) {
    	int n = 85; // 점수를 85로 설정
        n = n / 10; // 점수를 10으로 나눈 몫을 계산 (등급 기준)
        switch (n) {
            case 10 :
            case 9 :
                System.out.println("수");
                break;
            case 8 :
                System.out.println("우");
                break;
            case 7 :
                System.out.println("미");
                break;
            case 6 :
                System.out.println("양");
                break;
            default:
                System.out.println("가");
        }
    }
}

 

위의 예제는 주어진 점수 n을 10으로 나눈 몫을 기준으로 점수를 등급으로 분류하여 출력하는 예시이다.

점수가 100~90점이면 "수", 80~89점이면 "우", 70~79점이면 "미", 60~69점이면 "양", 나머지(59점 이하) 점수는 "가"를 출력한다. switch 문과 case 문을 사용하여 각 범위에 해당하는 등급을 매칭하며, 각 case는 break를 통해 조건이 만족되면 이후 처리를 건너뛴다. default는 어떤 case에도 해당하지 않을 때 실행된다..

 

 

이와 같이 입력값이 정형화되어 있는 경우 if 문보다는 switch/case 문을 쓰는 것이 코드의 가독성이 좋다.

반응형