Заявление о переключении Java
Описание
Язык программирования использует управляющие операторы, чтобы заставить поток выполнения продвигаться и переходить в зависимости от изменений состояния программы. Java поддерживает два оператора управления потоком: if и switch. Эти операторы позволяют вам контролировать ход выполнения вашей программы на основе условий, известных только во время выполнения. Мы обсудили оператор if в учебнике по логическим операторам.
Переключатель Заявление
Оператор switch является многостраничным оператором ветвления Java. Он обеспечивает простой способ отправки выполнения в разные части вашего кода в зависимости от значения выражения. Вот общая форма оператора switch:
switch (выражение) { значение case1: // последовательность операторов перерыв; case value2: // последовательность операторов перерыв; .... значение caseN: // последовательность операторов перерыв; дефолт: // последовательность операторов по умолчанию }
Выражение должно иметь тип byte, short, int или char; каждое из значений, указанных в операторах case, должно иметь тип, совместимый с выражением. Значение перечисления также может использоваться для управления оператором switch. Начиная с Java 7 String также допускается в качестве выражения регистра. Каждое значение регистра должно быть уникальным литералом (т. Е. Оно должно быть константой, а не переменной). Повторяющиеся значения регистра не допускаются.
Как работает оператор switch
Значение выражения сравнивается с каждым из буквальных значений в операторах case. Если совпадение найдено, выполняется последовательность кода, следующая за этим оператором case. Если ни одна из констант не соответствует значению выражения, выполняется инструкция по умолчанию. Тем не менее, оператор по умолчанию является необязательным. Если не найдено ни одного случая, и по умолчанию нет, дальнейшие действия не предпринимаются.
Оператор break используется внутри коммутатора для завершения последовательности операторов. Когда встречается оператор break, выполнение переходит к первой строке кода, которая следует за всем оператором switch.
Давайте разберемся с концепцией программы. Ниже программы выводится сумма бонуса в зависимости от класса работника. Сотрудник может быть класса A, B, C или по умолчанию (кроме A, B и C).
Java-код: перейти к редактору
public class SwitchCaseDemo {
public static void main(String[] args) {
char Grade ='B';
switch (Grade){
case 'A':
System.out.println("You are Grade A Employee: Bonus="+ 2000);
break;
case 'B':
System.out.println("You are Grade B Employee: Bonus="+ 1000);
break;
case 'C':
System.out.println("You are Grade C Employee: Bonus="+ 500);
break;
default:
System.out.println("You are Default Employee: Bonus="+ 100);
break;
}
}
}
Выход:
Вложенные выражения Switch
Вы можете использовать переключатель как часть последовательности операторов внешнего переключателя. Это называется вложенным переключателем. Поскольку оператор switch определяет свой собственный блок, не возникает конфликтов между константами регистра во внутреннем коммутаторе и константами во внешнем коммутаторе.
Важные моменты, связанные с утверждениями Switch-Case:
- Переключатель может только проверить на равенство. Это означает, что другие реляционные операторы, например, «больше, чем», становятся непригодными в случае.
- Регистр констант оценивается сверху вниз, и первая константа регистра, которая соответствует выражению коммутатора, является точкой входа в выполнение. Если оператор break не используется, будет выполнен весь случай после точки входа.
- Никакие две падежные константы в одном и том же переключателе не могут иметь одинаковые значения. Конечно, оператор switch и окружающий внешний переключатель могут иметь общие константы.
- Случай по умолчанию может быть расположен в конце, в середине или сверху. Как правило, по умолчанию появляется в конце всех случаев.
Перерыв Заявления
Оператор break, включенный в каждый раздел case, определяет, когда прекратить выполнение операторов в ответ на сопоставление case. Без оператора break в разделе case, после установления соответствия, операторы для этого соответствия и все операторы, расположенные ниже по переключателю, выполняются до тех пор, пока не будет найден разрыв или конец переключателя. В некоторых ситуациях это может быть именно тем, что вы хотите сделать. В противном случае вы должны включить операторы break, чтобы гарантировать выполнение только правильного кода. Иногда желательно иметь несколько случаев без операторов разрыва между ними. Например, здесь программа печатает одно и то же значение, пока не будет выполнено какое-либо условие.
Java-код: перейти к редактору
import java.util.Scanner;
public class SwitchBreakDemo {
public static void main(String[] args) {
int age;
Scanner inputDevice = new Scanner(System.in);
System.out.print("Please enter Age: ");
age = inputDevice.nextInt();
switch (age){
case 10:
case 15:
case 17:
System.out.println("You are not eligible for voting");
break;
case 18:
System.out.println("You are eligible for voting");
}
}
}
Выход:
Резюме
- Оператор switch - это многопоточный оператор ветвления Java.
- Переключатель может только проверить на равенство. Это означает, что другие реляционные операторы, например, «больше, чем», становятся непригодными в случае.
- Оператор break используется для остановки текущей итерации цикла или завершения блока Switch-case.
Редактор кода Java:
Предыдущая: Логический оператор
Далее: Пока и Делай цикл
Новый контент: Composer: менеджер зависимостей для PHP , R программирования