switch - case 문

JunHyeok Oh·2021년 5월 5일
0

Java 기초_SelfStudy

목록 보기
8/10
  • 비교조건이 특정 값이나 문자열일 경우, if - else if 문에서 반복되는 부분을 가독성 좋게 표현한 방법입니다.

  • java14 부터는 각 case에서 break를 사용하지 않아도 됩니다.

코드예시

import java.util.Scanner;

public class SwithchCaseTest {

	public static void main(String[] args) {

		Scanner scanner = new Scanner(System.in);
		int month = scanner.nextInt();
		int day;
		// int day = switch(month)
		switch(month){
		
			case 1: case 3: case 5: case 7: case 8: case 10: case 12:
				//yield 31 하면 반환값이라는 의미
				day = 31;
				break;
			case 4: case 6: case 9: case 11:
				day = 30;
				break;
			case 2: 
				day = 28;
				break;
			default:
				day = 0;
				System.out.println("존재하지 않는 달 입니다.");
			
		}
		System.out.println(month + "월은 " + day + "일입니다.");
		}

}

2 를 입력했을 경우,

실행결과

2월은 28일입니다.

코드해석

  • Scanner를 통해 값을 input 받을 수 있습니다.

  • 입력받은 값은 month 변수에 저장이 되는데, month 값에 따라 switch-case에서 수행되는 결과가 달라집니다.

  • month 값이 1,3,5,7,8,10,12 일 경우 day는 31이 저장되고 "~월은 31일 입니다. 라는 결과가 출력됩니다.

  • switch-case문에서 비교 조건이 같은 값일 때 같은 줄에 기입할 수 있습니다. ( 콜론으로 구분은 필요 )

  • 1~12 이외의 값이 입력될 경우 day에는 default 값인 0이 저장되고, "존재하지 않는 달입니다." 가 출력이 됩니다.

profile
Univ of Seoul , Statistics

0개의 댓글

Powered by GraphCDN, the GraphQL CDN