@Urukhayy

Как оптимальней?

1 вариант:
switch(a)
{
   case 0: 
   {
      b = 2;
      return 1;
   }
case 1: 
   {
      b = -1232;
      return 1;
   }
case 2: 
   {
      b = 12322;
      return 1;
   }
}


Вариант 2:
switch(a)
{
   case 0: 
   {
      b = 2;
   }
case 1: 
   {
      b = -1232;
   }
case 2: 
   {
      b = 12322;
   }
}


То бишь если один из case выполнится, другие не будут срабатывать, и второй вариант лучше?
  • Вопрос задан
  • 230 просмотров
Решения вопроса 2
@deliro
break
Ответ написан
Комментировать
Язык программирования не указан, но во многих второй вариант вообще ошибочный - case выполняется по очереди и каждый следующий перезаписывает предыдущий. Это называется switch fallthrough и считается плохой практикой, поскольку может повлечь за собой неожиданные проблемы при невнимательности, как в данном случае.

Ну и когда вы спрашиваете что "лучше" и "оптимальнее", нужно описывать критерии, по которым вы оцениваете лучшесть и оптимальность.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
Noobkesan
@Noobkesan
java developer
во-первых, во втором варианте необходим break, а во-вторых, это не та оптимизация, о которой стоит беспокоится, а скорее дело вкуса.
Ответ написан
Комментировать
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
Оптимальнее хранить данные в мэпе и выдавать по ключу.
Ответ написан
vpuhoff
@vpuhoff
Программист в свободное от работы время
вообще то break, а по сути без разницы, если вы не собираетесь проверять этот case три миллиарда раз в секунду, любой комп это условие сожрет и не подавится даже при сотне тысяч циклов в сек.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы