V tomto tutoriále sa naučíte používať príkaz switch v jazyku Java na riadenie toku vykonávania vášho programu pomocou príkladov.
switch
Vyhlásenie nám umožňuje vykonávať blok kódu medzi mnoho alternatív.
Syntax switch
príkazu v jazyku Java je:
switch (expression) ( case value1: // code to be executed if // expression is equal to value1 break; case value2: // code to be executed if // expression is equal to value2 break;… … default: // default statements )
Ako funguje príkaz na prepnutie?
Výraz sa vyhodnotí raz a porovná sa s hodnotami každého označenia prípadu .
- Ak existuje zhoda, vykoná sa zodpovedajúci kód po označení zhody prípadu .
Napríklad ak je hodnota výrazu rovná hodnote2,case value2:
vykoná sa kód after . - Ak nie je zhoda,
default:
vykoná sa kód after .
Poznámka : Rovnakú funkcionalitu môžeme pomocou Java urobiť, ak … ešte … ak rebrík. Syntax príkazu switch je však čistejšia a oveľa ľahšie sa číta aj píše.
Vývojový diagram príkazu switch

Príklad 1: Príkaz Java Switch
// Java Program to check the size // using the switch… case statement class Main ( public static void main(String() args) ( int number = 44; String size; // switch statement to check size switch (number) ( case 29: size = "Small"; break; case 42: size = "Medium"; break; // match the value of week case 44: size = "Large"; break; case 48: size = "Extra Large"; break; default: size = "Unknown"; break; ) System.out.println("Size: " + size); ) )
Výstup :
Veľkosť: veľká
Vo vyššie uvedenom príklade sme na vyhľadanie veľkosti použili príkaz switch. Tu máme premenlivé číslo. Premenná sa porovnáva s hodnotou každého výpisu prípadov.
Pretože sa hodnota zhoduje s prípadom 44 , premennej veľkosti sa priradí hodnota Large
.
príkaz break v prepínači Java … prípad
Všimnite si, že sme break
príkaz použili v každom bloku prípadov. To je užitočné na ukončenie vyhlásenia.
Ak sa break
príkaz nepoužije, vykonajú sa všetky prípady po zhodnom prípade. Napríklad,
class Main ( public static void main(String() args) ( int expression = 2; // switch statement to check size switch (expression) ( case 1: System.out.println("Case 1"); // matching case case 2: System.out.println("Case 2"); case 3: System.out.println("Case 3"); default: System.out.println("Default case"); ) ) )
Výkon
Prípad 2 Prípad 3 Predvolený prípad
V uvedenom príklade sme break
príkaz nepoužili . Tu sa výraz zhoduje s case 2
.
Môžete vidieť, že spolu s case 2
sa vykonajú aj všetky nasledujúce prípady.
Toto nie je požadovaný výstup. Preto je potrebné break
príkaz použiť s každým blokom prípadov .
Príklad 2: Tvorba kalkulačky pomocou príkazu switch
Nasledujúci program prijíma od používateľa tri vstupy: jeden operátor a 2 čísla . Na základe operátora poskytnutého používateľom vykoná výpočet čísel. Potom sa výsledok zobrazí na obrazovke.
Predtým, ako prejdete programom, ubezpečte sa, že viete o Java Scanneri, aby ste mohli prijímať údaje od používateľa.
import java.util.Scanner; class Main ( public static void main(String() args) ( char operator; Double number1, number2, result; // create an object of Scanner class Scanner input = new Scanner(System.in); // ask users to enter operator System.out.print("Choose an operator: +, -, *, or /: "); operator = input.next().charAt(0); // ask users to enter numbers System.out.print("Enter first number: "); number1 = input.nextDouble(); System.out.println("Enter second number: "); number2 = input.nextDouble(); switch (operator) ( // performs addition between numbers case '+': result = number1 + number2; System.out.print(number1 + "+" + number2 + " = " + result); break; // performs subtraction between numbers case '-': result = number1 - number2; System.out.print(number1 + "-" + number2 + " = " + result); break; // performs multiplication between numbers case '*': result = number1 * number2; System.out.print(number1 + "*" + number2 + " = " + result); break; // performs division between numbers case '/': result = number1 / number2; System.out.print(number1 + "/" + number2 + " = " + result); break; default: System.out.println("Invalid operator!"); break; ) input.close(); ) )
Výstup 1
Vyberte operátora: +, -, * alebo /: + Zadajte prvé číslo: 23 Zadajte druhé číslo: 21 23.0 + 21.0 = 44.0
Výstup 2
Vyberte operátora: +, -, * alebo /: - Zadajte prvé číslo: 24 Zadajte druhé číslo: 13 24.0-13.0 = 11.0
Výstup 3
Vyberte operátora: +, -, * alebo /: * Zadajte prvé číslo: 12 Zadajte druhé číslo: 6 12.0 * 6.0 = 72.0
Výstup 4
Vyberte operátora: +, -, * alebo /: / Zadajte prvé číslo: 36 Zadajte druhé číslo: 6 36.0 / 6.0 = 6.0
Výstup 5
Vyberte operátora: +, -, * alebo /:? Zadajte prvé číslo: 12 Zadajte druhé číslo: 23 Neplatný operátor!
V uvedenom príklade používame switch… case
príkaz na vykonávanie sčítania, odčítania, násobenia a delenia.
Poznámka : Príkaz prepínača Java funguje iba s:
- Dátové typy Java Primitive: byte, short, char a int
- Vymenované typy Java
- Trieda Java
- Triedy Java Wrapper: Character, Byte, Short a Integer.