Всегда ли конструкцию if-else можно реализовать через аналогичную switch-case в языке Java? Вопрос был на экзамене в вузе, я предположил, к примеру, что boolean-выражения через switch-case проверить не получится.
Оператор switch работает с примитивными типами данных: byte, short, char, и int. Также он работает с перечислимыми (итерируемыми) типами данных.
Можно использовать строки (String) и некоторые специальные производные от примитивных типы данных: Character, Byte, Short, и Integer.
Значение варианта case должно быть константой или литералом. Переменные запрещены.
Также вариант не может быть логического (boolean), вещественного и других типов данных, не перечисленных выше.
Соответственно конструкцию
if (x==a){....}
else if (x==b) {...}
else if (x==с) {...}
else if (x==d) {...}
else{...}
}
Не получится реализовать.
Получаем, что:
Хотя с развитием Java ситуация может меняться.
Сборка персонального компьютера от Artline: умный выбор для современных пользователей