본문 바로가기
자바

자바 switch문 Java 15강

by EverydayCoding 2021. 8. 13.

안녕하세요 매일코딩입니다~

이번에 알아볼 것은 switch입니다.

switch문이 무엇인가요?

프로그램을 복수로 분기시킬 수 있는 문법입니다.

그렇기 때문에 여러 가지 분기점을 만들 수 있습니다.

switch 문 사용법

switch(case number ) {

case number : System.out.println( );

case number :System.out.println( );

.

}

이렇게만 보면 쉽게 이해가 되지 않을 수 있습니다. 간단한 코드를 보면서 이해해 보도록 하겠습니다.

출력 값:

선풍기 풍속을 조절합니다.

1번 : 약, 2번 : 중, 3 : "강"

1

약한 바람이 나옵니다.

중간 바람이 나옵니다.

강한 바람이 나옵니다.

하지만 이러한 코드는 실제 선풍기처럼 작동하지 않습니다.

만약에 1번을 누르면 우리가 원하는 값은 약한 바람만 나오게 하는 건데 결과 값은 3개 모두 나옵니다.

또한 2번을 누르면 중간 바람만 나오게 해야 하는데 중간 바람과 강한 바람이 중간에 나옵니다.

이렇게 될 경우에는 프로그램이 제대로 완성되지 못한 겁니다. 그러면 어떻게 해야 swtich문을 잘 사용할 수 있을까요?

바로 break 문을 사용하면 됩니다. break문은 이름 그대로 브레이크를 걸어서 그 부분의 프로그램을 강제로 종료시킵니다. 그러면 break문은 어떻게 사용할까요? 아래의 코드를 보도록 하겠습니다.

출력 값:

선풍기 풍속을 조절합니다.

1번 : 약, 2번 : 중, 3 : "강"

2

중간 바람이 나옵니다.

 

이런 식으로 각각 case문 뒤에 break를 걸어주시면 원하는 case의 값을 얻을 수 있습니다.

**default는 갑자기 뭔가요?

default는 영어로 기본값을 뜻합니다. 그러므로 만약에 case number에서 number 값을 받을 수 있는 수가 존재하지 않는다면 다른 값이 들어갈 경우에 default값을 출력하게 됩니다.

예를 들어 위에서 1부터 3까지는 선풍기가 바람을 내보내지만 4,5,6 등등 이러한 숫자를 입력하면 default 값이 출력됩니다.

 

예제 1) 위의 코드를 사용해서 2를 눌렀을 때 중간 바람과 강한 바람이 나오게 하려면 어떻게 해야 할까요?( 1을 누르면 약한 바람만 나와야 합니다.)

출력 값 :

선풍기 풍속을 조절합니다.

1번 : 약, 2번 : 중, 3 : 강

2

중간 바람이 나옵니다.

강한 바람이 나옵니다.

 

예제 2) 위의 코드를 사용해서 3을 눌렀을 때 강한 바람과 default값이 같이 나오게 하려면 어떻게 해야 할까요?( 1, 2를 누르면 약한 바람, 중간 바람 각각 나와야 합니다.)

출력 값 :

선풍기 풍속을 조절합니다.

1번 : 약, 2번 : 중, 3 : 강

3

강한 바람이 나옵니다.

다른 값을 눌렀습니다.

 

코드 설명

1. scanIt.nextInt()를 통해서 키보드로 숫자를 입력한 값을 TurnOn에 집어넣습니다.

2. switch(TurnOn)을 통해서 switch문을 실행합니다.

3. 만약 case 1이라면 '약한 바람이 나옵니다'를 출력하고 break를 사용해서 switch문을 멈춥니다.

4. case 2도 case 1번과 같은 원리입니다.

5. case 3이라면 '강한 바람이 나옵니다'를 출력하고 break가 없기 때문에 그 아래 존재하는 default값도 출력합니다.

**case문은 이와 같이 위에서부터 아래로 프로그램을 읽습니다.

 

이번에는 이렇게 switch문에 대해서 알아봤습니다.

감사합니다~

'자바' 카테고리의 다른 글

자바 while 문 Java 17강  (0) 2021.08.17
자바 do while 문 Java 16강  (0) 2021.08.14
자바 if문 여러가지 문제 Java 14강  (0) 2021.08.12
자바 if문에서 논리곱, 논리합 연산자 Java 13강  (1) 2021.08.12
자바 if문 Java 12강  (0) 2021.08.11