[C#] 스위치 문에 “또는”을 어떻게 추가합니까?

이것이 내가하고 싶은 일입니다.

switch(myvar)
{
    case: 2 or 5:
    ...
    break;

    case: 7 or 12:
    ...
    break;
    ...
}

“case : 2 || 5″시도했지만 작동하지 않았습니다.

목적은 다른 값에 대해 동일한 코드를 작성하지 않는 것입니다.



답변

각 스위치 케이스를 쌓으면 OR 조건이 달성됩니다.

switch(myvar)
{
    case 2:
    case 5:
    ...
    break;

    case 7:
    case 12:
    ...
    break;
    ...
}


답변

케이스 레이블쌓아서 수행합니다 .

switch(myvar)
{
    case 2:
    case 5:
    ...
    break;

    case 7:
    case 12:
    ...
    break;
    ...
}


답변

case 2:
case 5:
do something
break;


답변

달리 지정하지 않으면 (중단을 작성하여) 케이스 문이 자동으로 넘어갑니다. 따라서 당신은 쓸 수 있습니다

switch(myvar)
{
   case 2:
   case 5:
   {
      //your code
   break;
   }

// 등 …}


답변

switch 문의 예는 비어 있지 않은 스택 할 수 없지만 cases를 사용해야 함을 보여줍니다 goto.

// statements_switch.cs
using System;
class SwitchTest
{
   public static void Main()
   {
      Console.WriteLine("Coffee sizes: 1=Small 2=Medium 3=Large");
      Console.Write("Please enter your selection: ");
      string s = Console.ReadLine();
      int n = int.Parse(s);
      int cost = 0;
      switch(n)
      {
         case 1:
            cost += 25;
            break;
         case 2:
            cost += 25;
            goto case 1;
         case 3:
            cost += 50;
            goto case 1;
         default:
            Console.WriteLine("Invalid selection. Please select 1, 2, or3.");
            break;
       }
       if (cost != 0)
          Console.WriteLine("Please insert {0} cents.", cost);
       Console.WriteLine("Thank you for your business.");
   }
}


답변