본문 바로가기
Programming/JAVA(eclipse)

java 4일차_01. 제어문( switch 문 )

by yoon9i 2024. 3. 13.

6. switch 문
- 용도: 조건이 여러개인 경우에 사용됨. 
         조건에 사용되는 연산자 지정안함.
- 특징: break 문 사용 및 미사용 가능하다. (옵션기능)
         ===> break 문이 없다면 일치된 case 문 이후의 모든 문장이
     실행된다.
         switch 문에 사용되는 변수의 데이터 타입은 6가지만 가능하다.
         ( byte, short, int, char, String, enum )
         case 문에는 중복값 지정 불가
- 문법:
switch( 변수 ) {

   case 값1(리터럴값): 문장;
    break; // switch 문을 빠져나옴.        case 값2(리터럴값): 문장;
    break; // switch 문을 빠져나옴.
   
....

   default: 문장;
                          break; // default 문장에서는 유무 상관없음.
}

 

package exam07_제어문;

public class Statement05_switch문 {

	public static void main(String[] args) {

		// switch 문
		// byte, short, int, char, String, enum

		int num = 10;

		switch (num) {
		case 5:
			System.out.println("값은 5입니다.");
			break;
		case 10:
			System.out.println("값은 10입니다.");
			break;
		case 15:
			System.out.println("값은 15입니다.");
			break;
		default:
			System.out.println("값은 default 입니다.");
			break;
		}
		
		//---------------
		
		char c = 'A';
		switch (c) {
		case 'A':
			System.out.println("값은 A 입니다.");
			break;
		case 'B':
			System.out.println("값은 B 입니다.");
			break;
		case 'C':
			System.out.println("값은 C 입니다.");
			break;
		default:
			System.out.println("값은 default 입니다.");
			break;
		}
		
		//-----------------
		
		String s = "MON";
		switch (s) {
		case "MON":
			System.out.println("값은 MON 입니다.");
			break;
		case "TUE":
			System.out.println("값은 TUE 입니다.");
			break;
		case "SUN":
			System.out.println("값은 SUN 입니다.");
			break;
		default:
			System.out.println("값은 default 입니다.");
			break;
		}
		
		// break 없이하면?------------------------
		
		String s2 = "MON2";
		switch (s2) {
		case "MON2":
			System.out.println("값은 MON2 입니다.");
		case "TUE2":
			System.out.println("값은 TUE2 입니다.");
		case "SUN2":
			System.out.println("값은 SUN2 입니다.");
		default:
			System.out.println("값은 default2 입니다.");
		}
		/*
		// 결과 >>>

		  값은 MON2 입니다.
		  값은 TUE2 입니다.
		  값은 SUN2 입니다.
		  값은 default2 입니다.
		  
		*/
		
		String s3 = "TUE2";
		switch (s2) {
		case "MON3":
			System.out.println("값은 MON3 입니다.");
		case "TUE3":
			System.out.println("값은 TUE3 입니다.");
		case "SUN3":
			System.out.println("값은 SUN3 입니다.");
		default:
			System.out.println("값은 default3 입니다.");
		}
		
		/*
		 * -> 일치된 case 문 이후의 모든 문장이 실행된다.
		 값은 default2 입니다.
         값은 default3 입니다.
		*/
		
		
		System.out.println("END.");
	}
}