Чем отличается условный оператор case от if? На языке Java
Answers & Comments
BrightOne
Если быть совершенно точным, то условные операторы switch-case.
Отличаются от if тем, что if проверяет некое условие (ЛЮБОЕ условие), а блок switch-case сначала задает значение - switch (значение), а потом сравнивает его с условиями в case.
Следовательно, к примеру:
if (n == 5) ... if (n == 2) ... if (n == -3) ...
будет эквивалентно
switch (n) { case 5: ... break; case 2: ... break; case -3: ... break; }
Учтите, что в switch-case ожидается использование break. Если не поставить break, case, который ниже текущего, тоже будет выполнен.
Answers & Comments
Отличаются от if тем, что if проверяет некое условие (ЛЮБОЕ условие), а блок switch-case сначала задает значение - switch (значение), а потом сравнивает его с условиями в case.
Следовательно, к примеру:
if (n == 5) ...
if (n == 2) ...
if (n == -3) ...
будет эквивалентно
switch (n) {
case 5:
...
break;
case 2:
...
break;
case -3:
...
break;
}
Учтите, что в switch-case ожидается использование break. Если не поставить break, case, который ниже текущего, тоже будет выполнен.