개발/Java

Java의 제어문: switch문

ju_ni_ 2023. 7. 12. 16:30
반응형

앞서 작성한 포스트에서는 조건문 중 가장 기본적인 if, if-else, if-else if-else에 대해 알아보았습니다. 이번 포스트에서는 또 다른 종류의 조건문인 switch문에 대해 알아보겠습니다.

 

switch

switch문은 주어진 변수의 값에 따라 실행할 코드를 결정합니다. if-else if-else문으로도 같은 기능을 구현할 수 있지만, 여러 값 중 하나를 선택하는 경우 switch문이 더 직관적이고 깔끔할 수 있습니다.

 

기본 형태는 아래와 같습니다.

switch (변수) {
    case 값1:
        실행할 문장;
        break;
    case 값2:
        실행할 문장;
        break;
    ...
    default:
        모든 case가 아닐 때 실행할 문장;
}

switch문은 변수의 값과 일치하는 case를 찾아 그 아래에 있는 문장을 실행합니다. 일치하는 case가 없다면 default 아래의 문장을 실행합니다. casebreak;로 종료되며, break;를 만나면 switch문을 빠져나옵니다.

 

case값에 따라 동일한 동작을 수행해야 하는 경우, 여러 case를 연속으로 작성할 수 있습니다.

switch (변수) {
    case 값1:
    case 값2:
        실행할 문장;
        break;
    ...
}

 

예를 들어, 사용자로부터 색상 선택을 입력받아 해당하는 메시지를 출력하는 코드는 아래와 같이 작성할 수 있습니다.

int choice = 1; // 사용자 입력을 받는다고 가정
String result = "";

switch (choice) {
    case 1:
        result = "빨간색 : 불같고 열정적이고 적극적이다.";
        break;
    case 2:
        result = "노란색 : 발랄하고 밝고 귀엽고 개성있고 유하다.";
        break;
    case 3:
        result = "검은색 : 묵묵하고 든든하고 냉철하고 멋지다 그리고 강하다.";
        break;
    case 4:
        result = "흰색 : 천사같고 깔끔하고 절리를 좋하하고 배려심이 많다.";
        break;
    default:
        result = "다시 시도해주세요.";
        break;
}
System.out.println(result);

 

삼항 연산자, if, switch문 비교

  • 삼항 연산자: 하나의 조건식만 있을 때 사용합니다. 간단한 조건식의 결과에 따라 두 개의 값을 선택합니다.
  • if문: 비교 연산자(<, >, <=, >=)를 사용하거나, 여러 개의 조건식을 논리 연산자(&&, ||)로 연결할 때 사용합니다.
  • switch문: 하나의 변수에 여러 개의 값이 있을 때, 그 값과 일치하는지 비교할 때 사용합니다.

 

switch문은 제한적인 경우에만 사용할 수 있지만, 해당 상황에서는 코드를 간결하게 만들어주며 가독성을 높여줍니다. 하지만 break;를 잊어버릴 경우 예상치 못한 동작을 할 수 있으니 주의가 필요합니다.

 

다음 포스트에서는 반복문에 대해 알아보겠습니다.

반응형

'개발 > Java' 카테고리의 다른 글

Java의 제어문: while문  (0) 2023.07.13
Java의 제어문: for문  (0) 2023.07.13
Java의 제어문: if문  (0) 2023.07.12
Java에서의 형변환: Type Casting  (0) 2023.07.12
Java에서 랜덤값 생성하기: Math 클래스와 Random 클래스  (0) 2023.07.12