Оператор переключения — это оператор переключения с одним условием и несколькими ветвями. Формат синтаксиса следующий:
переключатель (выражение) {значение константы случая 1: разрыв; значение константы случая 2: значение константы случая 3: утверждение 3;... значение константы случая n: прерывание по умолчанию; Оператор n+1;}Значение «выражения» в операторе переключения может иметь тип byte, short, int или char. «Константное значение от 1» до «постоянного значения n» также имеет тип byte, short, int или char, и они должны быть такими. отличаться друг от друга.
Оператор переключения сначала вычисляет значение выражения. Если значение выражения равно постоянному значению после определенного случая, операторы в этом случае выполняются до тех пор, пока не встретится оператор прерывания. Если в кейсе не используется оператор прерывания, то как только значение выражения станет равным постоянному значению, стоящему за кейсом, программа будет не только выполнять операторы в кейсе, но также продолжит выполнять операторы в последующих кейсах до тех пор, пока не встречается оператор прерывания. Если значение выражения в операторе переключения не равно постоянному значению любого случая, выполняется оператор, следующий за умолчанию. Значение по умолчанию в операторе переключения является необязательным. Если оно не существует и значение выражения в операторе переключения не равно постоянному значению любого регистра, то оператор переключения не будет выполнять никакой обработки.
Общей особенностью операторов условного ветвления if, которые мы изучили ранее, является выбор выполнения операции ветвления на основе одного или нескольких условий, а не выбор выполнения нескольких операций ветвления. В операторе переключения, рационально используя оператор прерывания, вы можете добиться результата выполнения одной или нескольких операций ветвления на основе условия.
Пример:
publicclassMain {publicstaticvoidmain (Stringargs []) {chargrade = 'B'; переключатель (класс) {case'A': System.out.println (отлично); перерыв; случай 'B': System.out.println (хорошо); перерыв;case'C':System.out.println(пройдено);break;default:System.out.println(неизвестно);}}}Результаты бега следующие:
хороший