Синтаксис:
switch (переменная или выражение)case value-1:
Положение 1… N
перерыв;
case value-2:
Положение 1… N
перерыв;
.
.
.
case value-n:
Положение 1… N
перерыв;
По умолчанию :
Положение 1… N
Здесь вы можете использовать любую переменную или выражение в выключатель часть, которая будет соответствовать дело значение. 'перерыв"заявление и"По умолчанию'часть необязательна для выключатель утверждение. Но если 'перерыв' оператор опускается для любого или всех дело операторов, то следующее значение case или все значения case будут проверены с определенным значением выключатель часть. Если ни один из дело значение совпадает с выключатель значение, то утверждения По умолчанию часть будет выполнена. Как выключатель Оператор работает с дополнительными частями и без них, показаны ниже на различных примерах.
Пример-1: Использование оператора switch-case без разрыва и по умолчанию
В следующем примере показано, как работает оператор switch-case, когда нет перерыв а также По умолчанию заявления используются. Строковые данные будут приняты как входные и сохранены в переменной, Я БЫ, и ценность Я БЫ будет проверяться с каждым значением case. Он не только распечатает сообщение, в котором значение case совпадает со значением ID, но также распечатает все сообщения оставшегося раздела case, потому что нет перерыв заявление используется. Если ни одно значение регистра не совпадает с Я БЫ значение, то сообщение не будет напечатано, потому что нет По умолчанию раздел используется в коде.
// Импортировать пакет сканераимпорт Java.утилита.Сканер;
public class switch1
public static void main (String [] args)
// Создаем объект сканера
Вход сканера = новый сканер (Система.в);
Система.вне.print ("Введите свой ID:");
// Берем строковые данные от пользователя
Идентификатор строки = ввод.следующий();
// Переключаем выражение
switch (ID)
// Оператор регистра-1
case "0111786":
Система.вне.println ("Ваш пакет - 24");
// Оператор регистра-2
case "0111234":
Система.вне.println ("Ваш пакет - 20");
// Оператор регистра-3
case "0111923":
Система.вне.println ("Ваш пакет 37");
// Закрываем объект сканера
Вход.Закрыть();
Выход:
Следующий вывод появится, если входное значение соответствует первому значению case после выполнения скрипта. Здесь печатаются последние два сообщения, так как перерыв утверждение.
Когда входное значение совпадает со вторым значением case, появится следующий вывод.
Если входное значение не совпадает с каким-либо значением case, то для исключения вывода не будет По умолчанию раздел.
Пример-2: Использование оператора switch-case с разделом по умолчанию
По умолчанию раздел необходим для блока switch-case для вывода сообщения для пользователя о том, что совпадение не найдено. В следующем примере показано использование раздела по умолчанию в блоке switch-case. Здесь значение числа будет проверяться с каждым значением case оператора switch-case, и совпадение не найдено, тогда сообщение По умолчанию раздел будет напечатан.
public class switch2public static void main (String [] args)
int number = 380;
switch (number)
// Оператор регистра-1
case 440:
Система.вне.println («Вы выбраны в группу А»);
// Оператор регистра-2
case 500:
Система.вне.println («Вы выбраны в группу Б»);
// Оператор регистра-3
case 890:
Система.вне.println («Вы выбраны в группу C»);
// Выполнение оператора по умолчанию, если все case возвращает false
По умолчанию:
Система.вне.println ("Извините, вы не выбраны");
Выход:
Следующий вывод появится после выполнения кода. Согласно коду, значение, присвоенное в номер переменная не соответствует ни одному регистру. Итак, послание По умолчанию раздел напечатан здесь.
Пример-3: Использование оператора switch-case с default и break
В следующем примере показано использование оператора switch-case с разделом по умолчанию и оператором breaks. Здесь код курса будет взят как ввод от пользователя, и он будет проверяться с каждым значением case. Если какое-либо совпадение существует, то будут выполнены операторы соответствующего раздела case, и программа завершится из блока switch-case для использования перерыв утверждение. Если совпадения не существует, будут выполнены операторы раздела по умолчанию.
// Импортировать пакет сканераимпорт Java.утилита.Сканер;
public class switch3
public static void main (String [] args)
// Создаем объект сканера
Вход сканера = новый сканер (Система.в);
Система.вне.print ("Введите код курса:");
// Берем строковые данные от пользователя
Строковый код = ввод.следующий();
switch (code)
// Оператор регистра-1
футляр "CSE-105":
Система.вне.println ("Название курса: Программирование на Java");
Система.вне.println ("Кредитный час: 2");
Система.вне.println ("Семестр: 2");
перерыв;
// Оператор регистра-2
футляр «CSE-207»:
Система.вне.println («Название курса: структура данных»);
Система.вне.println ("Кредитный час: 2");
Система.вне.println ("Семестр: 4");
перерыв;
// Оператор регистра-3
футляр "CSE-402":
Система.вне.println («Название курса: Искусственный интеллект»);
Система.вне.println ("Кредитный час: 3");
Система.вне.println ("Семестр: 10");
перерыв;
// Выполнение оператора по умолчанию, если все case возвращает false
По умолчанию:
Система.вне.println («Неверный код курса»);
// Закрываем объект сканера
Вход.Закрыть();
Выход:
После выполнения кода он запросит код курса у пользователя. Здесь, CSE-105 принимается как ввод, который соответствует первому значению case. Таким образом, подробные сведения о курсе печатаются, а другие разделы случая опускаются для использования перерыв утверждение.
Следующий, CSE-402 принимается как ввод, который соответствует последнему значению case, и печатаются соответствующие детали курса.
Следующий, CSE-101 принимается как ввод, который не соответствует ни одному значению case, и печатается сообщение раздела по умолчанию.
Заключение:
Использование оператора switch-case во многих случаях эффективно вместо использования оператора if-else-if для решения конкретных проблем. Концепция и использование оператора switch-case должным образом объясняются в этом руководстве, чтобы помочь пользователям Java эффективно применять его в своем коде на основе требований.