Java에서 하나의 Switch Case 문에 여러 값 사용
 
이 기사에서는 하나의 switch-case 문에 대해 여러 값을 사용하는 방법을 배웁니다.
switch-case 문 사용
    
Java는 프로그래머가 switch case 문을 사용하여 다른 프로그래밍 언어와 같이 너무 많은 if-else 조건문을 극복할 수 있도록 합니다. 또한 사용자가 switch-case 문을 사용하면서 여러 경우에 대해 동일한 작업을 수행하려면 어떻게 해야 합니까?
일반적으로 사용자는 아래와 같이 할 수 있습니다.
class Test {
  public static void main(String[] args) {
    int num = 9;
    switch (num % 4) {
      case 1:
        System.out.println("num is not divisible by 4.");
        break;
      case 2:
        System.out.println("num is not divisible by 4.");
        break;
      case 3:
        System.out.println("num is not divisible by 4.");
        break;
      case 0:
        System.out.println("num is divisible by 4.");
        break;
      default:
        System.out.println("num is not divisible by 4.");
    }
  }
}
위의 예에서는 switch-case 문을 사용하여 숫자가 4로 나누어 떨어지는지 확인합니다. switch-case 문에서 num%4 조건을 사용하고 모듈로 연산을 기반으로 응답을 인쇄합니다. .
사용자는 모듈로 1, 2 및 3에 대해 동일한 문장을 인쇄하고 있음을 알 수 있습니다. num은 4로 나눌 수 없습니다.
출력:
num is not divisible by 4.
하나의 switch-case 문에 둘 이상의 값 사용
숫자를 4로 나눌 수 있는지 여부를 결정하기 위해 switch-case 문을 사용하여 위의 예에서 10줄의 코드를 작성했습니다. 단일 switch-case 문에 여러 값을 사용하여 해당 코드를 더 명확하고 읽기 쉽게 만들 수 있습니다.
아래 예에서는 사례 1, 2 및 3에 대해 단일 switch-case 문을 사용했습니다. 사용자는 코드가 더 명확하고 읽기 쉽고 여전히 동일한 출력을 제공하는 것을 볼 수 있습니다.
예제 코드:
public class Test {
  public static void main(String[] args) {
    int num = 9;
    switch (num % 4) {
      case 1:
      case 2:
      case 3:
        System.out.println("num is not divisible by 4.");
        break;
      case 0:
        System.out.println("num is divisible by 4.");
        break;
      default:
        System.out.println("num is not divisible by 4.");
    }
  }
}
출력:
num is not divisible by 4.
화살표 구문을 사용하여 하나의 switch-case 문에 여러 값 사용
Java 14에는 switch-case 문에 대한 새로운 구문이 도입되었습니다. 사용자는 쉼표를 구분하여 단일 case에 대해 여러 값을 추가할 수 있으며 사용자는 중괄호 안에 실행 코드를 넣어야 합니다.
switch-case 문의 화살표 구문은 다음과 같습니다.
case firstCase, secondCase,
    thirdCase
    -> {
        // executable code
}
예제 코드:
public class Test {
  public static void main(String[] args) {
    int num = 9;
    switch (num % 4) {
        case 1,2,3 -> {
            System.out.println("num is not divisible by 4.");
        }
        case 0->{
            System.out.println("num is divisible by 4.");
        }
        default->{
            System.out.println("num is not divisible by 4.");
        }
    }
    }
}
위의 예에서는 숫자가 4로 나누어 떨어지는지 확인하면서 1, 2 및 3 사례에 대해 switch-case 문의 새 구문을 사용했습니다.
출력:
num is not divisible by 4.
예제 코드: switch-case를 사용하여 특정 연도의 월 일수 반환
    
다음 예에서는 switch-case 화살표 구문을 사용하여 현재 월의 일 수를 가져왔습니다. 사용자는 yield를 사용하여 1, 3, 5, 7, 8, 10 및 12 사례에 대해 31일을 반환하고 4, 6, 9 및 11 사례에 대해 30일을 반환하고 있음을 알 수 있습니다.
public class Test {
  public static void main(String[] args) {
    int monthToCheck = 2;
    int yearToCheck = 1968;
    int days = switch (monthToCheck){case 4, 6, 9, 11 -> {yield 30;
  }
            case 1, 3, 5, 7, 8, 10, 12 ->{
               yield 31;
            }
            case 2 ->{
                if ((( monthToCheck % 4 == 0) &&
                        !( monthToCheck % 100 == 0))
                        || ( monthToCheck % 400 == 0))
                    yield 29;
                else
                   yield 28;
            }
            default ->{
                System.out.println("Month is not valid.");
                yield -1;
            }
        };
        System.out.println("Number of Days in month " + monthToCheck + " is = " + days);
    }
}
출력:
Number of Days in month 2 is = 28
이 기사에서는 다양한 예제를 통해 단일 switch-case 문에 여러 값을 사용하는 방법을 설명했습니다. 또한 여러 값이 있는 switch-case 문을 사용하여 일 수를 가져오는 실제 예를 보았습니다.
단일 switch-case 문에 대해 여러 값을 사용하여 코드를 명확히 할 수 있습니다.
