-
Switch Case문카테고리 없음 2023. 2. 8. 15:21
Dart의 제어문중 Switch Case문
Switch Case문도 조건문이다.
Switch문의 형태는 아래와 같다.
switch (변수명){ case 값A : 값이 A일 때 실행할 명령문; break; case 값B : 값이 B일 때 실행할 명령문; break; case 값C : 값이 C일 때 실행할 명령문; break; case 값D : 값이 D일 때 실행할 명령문; break; case 값E : 값이 E일 때 실행할 명령문; break; default : 위의 값 A ~ E 모두 아닐때 실행할 명령문; }
위의 코드에서 변수명은 값을 검사할 변수를 넣고 case문에 있는 값과 일치하면 명령문이 실행된다.
일치하는 값이 없으면 마지막 default문이 실행된다.
예)
void main() { String favorite = "banana"; switch (favorite){ case 'apple' : print('I Love apple'); break; case 'orange' : print('I Love orange'); break; case 'mango' : print('I Love mango'); break; case 'banana' : print('I Love banana'); break; case 'pear' : print('I Love pear'); break; default : print('nothing'); } }
실행결과 case문에 있는 값과 일치해서 명령문이 실행됐다.
만약 String favorite = "tomato";라면 case문에 있는 값과 일치하지 않아서 nothing이 출력될것이다.
Switch문과 if 제어문 다른 점
if는 조건식이 true일 경우 블록 내부가 실행되고 switch는 변수가 어떤 값을 갖느냐에 따라 실행문이 선택된다. switch는 변수의 값에 따라 실행문이 결정되기 때문에 코드가 간결해 가독성이 좋다. 컴파일러가 최적화를 쉽게 할 수 있어 속도가 빠르다. switch문은 if-else문보다 사용할 수 있는 상황이 적다
[참고]
https://velog.io/@jeong11/Java%EB%B0%98%EB%B3%B5%EB%AC%B8-if-switch