홍드로이드의 야매코딩

[ Java ] # 6 switch / case 문 본문

Java

[ Java ] # 6 switch / case 문

홍드로이드 2020. 12. 10. 16:41

네 여러분들 안녕하십니까 홍 . 드로이드 입니다 ~ !



이번 시간에는 switch / case 문에 대해서 간단하게 알려드리고자 글을 쓰게 되었습니다.



먼저 switch 문은 if 문과 역할이 동일하지만 가독성이 좋게끔 정렬된 구조로 조건을 작성할 수 있기 때문에,


사용 합니다.


먼저 배우기 전에 switch 문에 대해서 핵심적으로 알고 계셔야 할 한가지 ... !



모든 switch 문은 if 문으로 변형이 가능하지만 , 모든 if문은 switch문으로 변형시킬 수 없다..


이게 무슨말인지 직접 예제코드를 보며 차근차근 배워가봅시다.






해당 코드를 살펴보면, 6번째 줄에 int (정수형) a라는 변수를 선언하고 그 안에 3이라는 값을 할당 시켰습니다.


그 이후에 switch 옆 소괄호에 a 변수를 집어넣어서 값을 검사합니다.


case 는 경우의 수를 의미하는데 case 1: 의 의미는 만약에 a의 값이 1이라면... 이라는 뜻이 됩니다.


if문으로 따진다면 if ( a == 1 ) 과 같은말이에요.


그리고 case문의 마지막 부분엔 각각 break; 라는 명령어도 넣어두었는데. 원하는 경우의 수를 얻었으니까 


더이상 switch문에 갇혀있을 필요없이 switch문에서 탈출하라는 뜻이 됩니다.


그러면 switch문의 가장 큰 중괄호 값 밖으로 튕겨져 나오면서 바로 밑에 있는 "스위치 문을 탈출하고 난 뒤 이곳을 이어서 수행" 이라는 문장이 이어서 수행 됩니다.


만약에 break를 걸지 않는다면 바로 밑줄에 있는 case문을 이어서 실행 한답니다. (경우에 따라선 다수의 경우의 수를 공통으로 묶어야 할 때는 이런 방법을 써야합니다)



마지막으로 default 는 case로 경우의 수를 쭈우우욱 검사하다가 아무것도 해당사항이 없다면 default 기본문을 실행해버리고 빠져나온답니다.





아까 맨처음 언급드린 switch 핵심에 대한 의미를 짚어 드리고 마칠게요

모든 switch 문은 if 문으로 변형이 가능하지만 , 모든 if문은 switch문으로 변형시킬 수 없다..


이게 대체 무슨말이냐면 바로 이럴 때 입니다...



일관성이 없이 중간에 2가지의 경우의수를 활용하는 ANDOR 연산자를 넣어버릴 경우.. 

또 기타 등등의 상황일 때는 switch문으로 변형이 불가합니다.




 


만약 이렇게 if문이 짜여있다고하면








 


이렇게 변형은 가능하겠지만요 ~~



이상으로 switch 문에 대해서 짧고 치열하게 알아봤습니다 ~








'Java' 카테고리의 다른 글

[ Java ] #5 if 문  (2) 2020.11.20
[ Java ] #4 메인 메소드 ( main method )  (0) 2020.11.17
[ Java ] #3 주석  (0) 2020.11.12
[ Java ] #2 자료형  (0) 2020.11.11
[ Java ] #1 변수  (0) 2020.11.10
Comments