블로그 이미지
'무른모'란 부드럽다라는 뜻을 가진 '무르다'라는 말과 도구, 연장을 뜻하는 '연모'라는 순 우리말의 합성어로 소프트웨어를 말합니다. seanhigher

카테고리

분류 전체보기 (161)
Blog srart (16)
Dev Center (94)
Real Life (13)
Mac life (21)
Naver life (17)
Total662,892
Today14
Yesterday18

'케이스'에 해당되는 글 1건

  1. 2010.07.20 하나의 선택! switch, case.
프로그래밍을 하다보면, 분기문이나 반복문들 필수적으로 사용하게 된다. 그리고, 무엇보다 반복적인 비교문의 사용은 어쩌면, 개발자로 하여금 피곤함을 느끼게 하는 대목이기도 하다. 사지선다와 같이 입력해야 할 것이 정해져 있다면... 조금은 그 수고를 덜 수 있다.


다중 if else.
if 문을 사용할때는 그 결과같의 범위를 정해주게 된다. 가령 점수를 비교한다고 하면, 100 ~ 90 점 사이는 'A', 89 ~ 80 점은 'B', 79 ~ 70 점은 'C' 와 같은 식이다. 이것은 정확한 결과값을 필요로 하지 않을때 매우 유용하게 사용할 수 있는 방법이다.


사지선다, 오지선다.
하지만, 1 ~ 4번까지의 예를 들어주고, 그중에서 정해진 하나를 선택해야 한다면 if else 문의 활용은 왠지 낭비적인 문법이 될 수가 있다. 이럴땐 switch, case 문을 사용하여 좀더 효율적인 프로그래밍을 할 수 있다. case 문은 정해진 하나의 정수형을 받으며, 그것에 대한 비교만을 할 수 있게 되어 있다. 주어진 값이 '1' 일때, '2'일때, 아니면, 'a', 'b', '+', '-' 와 같은 기호들도 가능하다. 정수형, 문자형으로만 가능하다면!


switch case 사용하기.
'1' ~ '4' 의 예중에서 하나만을 선택해야 하는 것을 if else 로 표현하면...

int a = 2;
if( a == 1) System.out.println("1 입니다");
else if( a == 2) System.out.println("2 입니다");
else if( a == 3) System.out.println("3 입니다");
else if( a == 4) System.out.println("4 입니다");
else System.out.println("잘못된 숫자입니다.");

그렇게 복잡하진 않지만, switch, case 문을 사용하는 것이 조금은 더 현명한 선택이라고 할 수 있다. 입력받는 수가 정확한 정수형이라면!

int a = 2;
switch (a)
    case 1 :
        System.out.println("1 입니다.");
        break;
    case 2 :
        System.out.println("2 입니다.");
        break;
    case 3 :
        System.out.println("3 입니다.");
        break;
    case 4 :
        System.out.println("4 입니다.");
        break;
    default :
        System.out.println("잘못된 숫자입니다.");
        break;

case 부분에는 항상 break 문이 따라오게 되어있는데, 만일 이부분을 포함하지 않는다면, 조건이 만족하는 부분 이후의 모든 것들이 실행될 것이다. 위에서 모든 break 문을 제외하면 2, 3, 4 그리고 그 외의 모든 경우의 결과가 함께 출력될 것이다.


switch, case 문을 사용할 때의 주의할점.
switch(a) 에서 a 대신에 들어갈 수 있는 것은 정수형의 데이터 이거나, char 형의 데이터 이다. 만일 'a' 의 값이 논리형이거나, 그 외의 다른 값이라면 프로그램은 오류를 일으키게 될 것이다. case 문에서는 단 하나의 값만을 사용할 수 있다. 또한 중괄호를 사용하지 않고 실행문들을 표현한다는 것이 if 비교문과의 차이점이라고 할 수 있다.

Posted by seanhigher

댓글을 달아 주세요

최근에 달린 댓글

글 보관함