Вопросы с тегом «switch-statement»

В компьютерном программировании оператор switch, case, select или inspect - это тип механизма управления выбором, используемый для вызова определенных блоков кода на основе переменного содержимого.

10
идея переключения / сопоставления с образцом
Я недавно смотрел на F #, и, хотя я вряд ли скоро пройду через забор, он определенно выделяет некоторые области, где C # (или поддержка библиотеки) может облегчить жизнь. В частности, я имею в виду возможность сопоставления с образцом в F #, которая допускает очень богатый синтаксис - гораздо более …

7
Отрывается ли оператор break от переключателя / выбора?
Я знаю, что операторы switch/ selectавтоматически прерываются после каждого случая. Мне интересно, в следующем коде: for { switch sometest() { case 0: dosomething() case 1: break default: dosomethingelse() } } Имеет ли breakвыход заявление в forпетлю или только switchблок?

5
быстрый случай проваливается
У Свифта есть провал? например, если я сделаю следующее var testVar = "hello" var result = 0 switch(testVal) { case "one": result = 1 case "two": result = 1 default: result = 3 } Можно ли выполнить один и тот же код для случая "один" и случая "два"?

11
SQL Switch / Case в предложении 'where'
Я пытался искать вокруг, но я не мог найти ничего, что помогло бы мне. Я пытаюсь сделать это в SQL: declare @locationType varchar(50); declare @locationID int; SELECT column1, column2 FROM viewWhatever WHERE CASE @locationType WHEN 'location' THEN account_location = @locationID WHEN 'area' THEN xxx_location_area = @locationID WHEN 'division' THEN xxx_location_division …


17
Ограничения оператора переключения C # - почему?
При написании оператора switch есть два ограничения на то, что вы можете включить в операторах case. Например (и да, я знаю, что если вы делаете такие вещи, это, вероятно, означает, что ваша объектно-ориентированная (OO) архитектура ненадежна - это просто надуманный пример!), Type t = typeof(int); switch (t) { case typeof(int): …

5
Как добавить «или» в операторы switch?
Вот что я хочу сделать: switch(myvar) { case: 2 or 5: ... break; case: 7 or 12: ... break; ... } Я пробовал с "case: 2 || 5", но это не сработало. Цель состоит в том, чтобы не писать один и тот же код для разных значений.

8
ошибка оператора switch case: выражения case должны быть постоянными выражениями
Вчера мой оператор switch-case отлично работал. Но когда я запустил код ранее этим утром, затмение дало мне ошибку, подчеркнув операторы case красным цветом и сказав: выражения case должны быть постоянными выражениями, они постоянны, я не знаю, что произошло. Вот мой код ниже: public void onClick(View src) { switch(src.getId()) { case …

9
Почему оператор String switch не поддерживает нулевой регистр?
Мне просто интересно, почему switchоператор Java 7 не поддерживает nullрегистр, а вместо этого бросает NullPointerException? См. Прокомментированную строку ниже (пример взят из статьи Java Tutorialsswitch ): { String month = null; switch (month) { case "january": monthNumber = 1; break; case "february": monthNumber = 2; break; case "march": monthNumber = …


12
Пропадание оператора switch… должно ли это быть разрешено? [закрыто]
В его нынешнем виде этот вопрос не подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, повлечет за собой дебаты, аргументы, опросы или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, снова открыть, …

13
Оператор переключения Java несколько случаев
Просто пытаюсь понять, как использовать несколько вариантов для оператора переключения Java. Вот пример того, что я пытаюсь сделать: switch (variable) { case 5..100: doSomething(); break; } вместо того, чтобы делать: switch (variable) { case 5: case 6: etc. case 100: doSomething(); break; } Есть идеи, если это возможно, или какая …

5
Почему переключение быстрее, чем если бы
Во многих книгах по Java switchоператор описывается как более быстрый, чем if elseоператор. Но нигде не узнал, почему switch быстрее if . пример У меня есть ситуация, когда я должен выбрать один из двух пунктов. Я могу использовать либо использовать switch (item) { case BREAD: //eat Bread break; default: //leave …

19
Как вырваться из петли внутри переключателя?
Я пишу код, который выглядит так: while(true) { switch(msg->state) { case MSGTYPE: // ... break; // ... more stuff ... case DONE: break; // **HERE, I want to break out of the loop itself** } } Есть ли прямой способ сделать это? Я знаю, что могу использовать флаг и выйти …

5
Если против скорости переключения
Операторы switch обычно быстрее, чем эквивалентные операторы if-else-if (например, описанные в этой статье ) из-за оптимизации компилятора. Как на самом деле работает эта оптимизация? У кого-нибудь есть хорошее объяснение?

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.