본문 바로가기
Java

[자바 입문] Switch문

by sangyunpark 2023. 8. 10.

Switch 문

switch문은 어떤 변수의 값에 따라서 문장을 실행할 수 있도록 하는 제어문이다.

switch문에서 사용하는 키워드는 switch, case, default, braek이다.

 

switch문

switch(변수){
        case 값1 : 
            실행문; 
            break;
        case 값2 : 
            실행문; 
            break;  
        default;    
    }
 int value = 1;

    switch(value){
        case 1: 
            System.out.println("1");
            break;
        case 2:
            System.out.println("2");
            break;
        case 3 :
            System.out.println("3");
            break;
        default :
            System.out.println("그 외의 숫자");
    }

value의 값이 1일경우 1출력, 2일경우 2출력, 3일경우 3출력, 그 외일 경우 그 외의 숫자 출력

break를 사용하지 않은 경우 value가 1일 경우 1이 출력되고, switch 문장을 빠져나가는 것이 아니라 1,2,3 그외의 숫자가 연속해서 실행된다.

 

JDK7 부터는 switch 다음 괄호안에 문자열 타입의 변수도 올 수 있다.

String str = "A";

    switch(str){
        case "A": 
            System.out.println("1");
        case "B":
            System.out.println("2");
        case "C" :
            System.out.println("3");
        default :
            System.out.println("그 외의 숫자");
    }

 

출처 : https://school.programmers.co.kr/learn/courses/5/lessons/119

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

switch 실습(1)

https://school.programmers.co.kr/learn/courses/5/lessons/410

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

import java.util.Calendar;
public class SwitchExam {
    public static void main(String[] args) {
        // month에는 오늘이 몇 월인지 들어 있습니다.
        int month = Calendar.getInstance().get(Calendar.MONTH) + 1;
        String season = "";
        // switch문을 이용해서 season이 오늘은 어떤 계절인지 나타내게 만들어보세요.
        
        int value = 0;
        
        if(month >= 12 && month <= 2){
            value = 1;
        }else if(month >=3 && month <=5){
            value = 2;
        }else if(month >= 6 && month <= 8){
            value = 3;
        }else{
            value = 4;
        }
        
        switch(value){
            case 1:
                season = "겨울";
                break;
            case 2:
                season = "봄";
                break;
            case 3:
                season = "여름";
                break;
            case 4:
                season = "가을";
                break;    
        }
        System.out.println("지금은 " + month + "월이고, " + season + "입니다.");
    }
}

 

switch 실습(2)

https://school.programmers.co.kr/learn/courses/5/lessons/903

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

import java.util.Calendar;
public class SwitchExam {
    public static void main(String[] args) {
        // 오늘이 몇 월인지 month에 저장합니다.
        int month = Calendar.getInstance().get(Calendar.MONTH) + 1;
        String season = "";
        
        // 다음과 같이 case문을 한번에 사용하면 더 짧게 코드를 짤 수 있습니다.
        switch(month) {
            case 1:
            case 2:
            case 12:
                season = "겨울";
                break;
            case 3:
            case 4:
            case 5:
                season = "봄";
                break;
            case 6:
            case 7:
            case 8:
                season = "여름";
                break;
            case 9:
            case 10:
            case 11:
                season = "가을";
                break;
        }
        System.out.println("지금은 " + month + "월이고, " + season + "입니다.");
    }
}

같은 동작을 하는 case문은 위와같이 한 번에 처리할 수 있다.

'Java' 카테고리의 다른 글

[자바 입문] do while문  (0) 2023.08.10
[자바 입문] while문  (0) 2023.08.10
[자바 입문] 삼항 연산자  (0) 2023.08.10
[자바 입문] 논리연산자  (0) 2023.08.10
[자바 입문] if 문  (0) 2023.08.10