objective c switch ios есть способ объединения корпусов коммутаторов?




objective c switch string (3)

Мне было интересно, есть ли способ для комбинированных случаев переключения, например:

   switch (value)
   {
   case 0,1,2:
      nslog (@"0,1,2 cases");
      break
      case 3:
      nslog (@"3 cases");
        break;
      default:
        NSLog (@"anything else");
        break;
   }

Я буду очень признателен за вашу помощь


Вы имеете в виду что-то вроде этого?

switch (value)
{
case 0:
case 1:
case 2:
  NSLog (@"0,1,2 cases");
  break;
case 3:
  NSLog (@"3 cases");
  break;
default:
  NSLog (@"anything else");
  break;
}

Вы знаете, структура корпуса коммутатора выполнит каждую строку внутри фигурных скобок, начиная с соответствующей строки case, пока не достигнет последней или разрыва. Итак, если вы не включите перерыв после дела, он также продолжит выполнение следующего дела.


Также возможно использовать диапазоны (немного меньше кода). Следующий пример иллюстрирует это:

switch (value)
   {
      case 0 ... 2:
         NSLog (@"0,1,2 cases");
         break
      case 3:
         NSLog (@"3 cases");
         break;
      default:
         NSLog (@"anything else");
         break;
   }

Кроме того, вы можете это сделать ...

case 0:
case 1:
case 2:
    NSLog();
    break;

case 3:
   NSLog()
   break;

default:
   NSLog();
   break;




switch-statement