티스토리 뷰
먼저 이 강좌는 SDA, 디벨로이드, ADF카페에 보급(?)되며 티스토리와 네이버의 글양식 차이로 인해 사진과 글씨가 깨져 보일 경우 원본 링크로 와서 감상해 주시길 바랍니다.
안녕하세요.
이번에 살펴볼 switch문은 말 그대로 스위치 입니ㅏㄷ. (←고의적 오타)
if~else와 비슷하면서도 다른 문구이니 꼭 숙지해 두시길 바랍니다.
스위치 문은 case와 default라는 레이블로 구성이 됩니다.
한번 기본 구성을 살펴보도록 하겠습니다.
switch(Mir)
{
case 1:
. . . .
case 2:
. . . .
case 3:
. . . .
default:
. . . .
}
이런 구성을 가지고 있습니다.
Mir의 값이 1이면 case 1:부터 시작되며 값이 3이라면 case 3:부터, 만약 아무것도 포함되어 있지 않다면 default부터 시작되는 것이지요
제 허접한 그림 솜씨로 한번 표현해 봤습니다. ㅠㅠ 역시 그림에는 절대로 소질이 없네요..
아무튼 이런 구조로 실행 됩니다.
case라는 레이블은 switch의 값이 n이라면 여기서부터 시작하세요. 라는 뜻을 가지고 있으며,
default 레이블은 값 n에 해당하는 레이블(case)이 없다면 여기서 부터 실행하세요!라는 뜻으로 이해하시면 됩니다. ㅎㅎ
한번 예제를 통해 보도록 하겠습니다.
이런 종류의 문구는 엄청난 설명보다 하나의 예제가 도움이 더 많이 되는 듯 해요.
class Switchcase { public static void main(String[] args) { int M=2; switch(M) { case 1: System.out.println("int형 변수 M의 값은 "+M+" 이며 case1이 실행되었습니다"); case 2: System.out.println("int형 변수 M의 값은 "+M+" 이며 case2가 실행되었습니다"); case 3: System.out.println("int형 변수 M의 값은 "+M+" 이며 case3이 실행되었습니다"); default: System.out.println("int형 변수 M의 값은 "+M+" 이며 default문이 실행되었습니다"); } } }
이렇게 구성했습니다.
예상을 해보면 M이 2이므로 case2부터 실행될 것임을 알수 있습니다.
한번 실행 결과를 보도록 하겠습니다.
이렇게 M의 값이 2 이므로 case 2: 부터 아래로 실행이 되었음을 알 수 있습니다.
그런대 여기서 잠깐!
우리가 프로그램을 짜다 보면 값이 2일 경우 case 2만 실행되어야 하는 경우가 있습니다.
이 경우가 더욱더 많다고 생각하는데요.
이럴 때는 어떻게 해야 할까요?
이러한 이유로 만들어 진 것이 바로 break레이블 입니다.
일단 위 예제에 break를 넣어 만들어 보도록 하겠습니다.
class Switchcasebreak { public static void main(String[] args) { int M=2; switch(M) { case 1: System.out.println("int형 변수 M의 값은 "+M+" 이며 case1이 실행되었습니다"); break; case 2: System.out.println("int형 변수 M의 값은 "+M+" 이며 case2가 실행되었습니다"); break; case 3: System.out.println("int형 변수 M의 값은 "+M+" 이며 case3이 실행되었습니다"); break; default: System.out.println("int형 변수 M의 값은 "+M+" 이며 default문이 실행되었습니다"); } } }
각 case마다 break를 넣었습니다.
실행 결과를 한번 볼까요?
이렇게 case 2로 들어간다음 println이 실행되고 break를 만나 switch를 빠져나온 모습을 볼 수 있습니다.
다시 한 번 그림으로 표현해 보도록 하겠습니다.
그림이 허접해도 그냥 봐주세요. ㅠㅅㅠ
이런 그림으로 표현이 가능합니다.
break문을 만나는 즉시 반복문(switch등)을 빠져나올 수 있지요. ㅋㅋ
이렇게 switch와 break에 대해 살펴봤습니다.
이런 구문은 많은 연습이 필요하다 생각합니다. 저 역시 이 강좌를 쓰며 연습하고 있습니다.
여러분도 많은 연습 하셔서 꼭 마스터 하시길 바랍니다. ㅎㅎ
다음 강좌에서는 for와 while, do~while에 대해 배워보겠습니다.
'Programming > Java' 카테고리의 다른 글
총정리 / 루트와 String (0) | 2013.03.13 |
---|---|
무한루프(無限Loop)와 그 유용성에 대해 (0) | 2013.03.08 |
반복문에서 부가적인 역할을 하는 continue와 break (5) | 2013.03.02 |
반복문을 끝내볼까? while, for, do~while (0) | 2013.03.01 |
if~else, 만약 ~이라면 ~을 실행하라 (2) | 2013.02.27 |
비트 연산자, 연산자의 끝을 달려가보자 (0) | 2013.02.23 |
단항 연산자는 이항연산자와 무슨 차이가 있지? (0) | 2013.02.23 |
계산을 할수 있는 연산자에 대해 알아보자! - 2편 (0) | 2013.02.22 |
- Total
- Today
- Yesterday
- String Name = Miru(itmir913);
- String Mail = itmir913@gmail.com;
- String github = https://github.com/itmir913;