Prohlášení o přepnutí Java (s příklady)

V tomto kurzu se naučíte používat příkaz switch v jazyce Java k řízení toku provádění vašeho programu pomocí příkladů.

Toto switchprohlášení nám umožňuje provést blok kódu mezi mnoha alternativami.

Syntaxe switchpříkazu v Javě 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 )

Jak funguje příkaz switch?

Výraz je vyhodnocen jednou a porovnán s hodnotami každého označení případu .

  • Pokud existuje shoda, provede se odpovídající kód po označení shodného případu .
    Například pokud je hodnota výrazu rovna hodnotě2, provede se kód po case value2:.
  • Pokud není shoda, provede se kód po default:.

Poznámka : Stejnou funkcionalitu můžeme pomocí Javy udělat, pokud … jinak … pokud v žebříčku. Syntaxe příkazu switch je však čistší a je mnohem snazší číst a psát.

Vývojový diagram příkazu switch

Vývojový diagram příkazu Java Switch

Příklad 1: Pří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 :

 Velikost: Velká

Ve výše uvedeném příkladu jsme k vyhledání velikosti použili příkaz switch. Tady máme variabilní číslo. Proměnná je porovnána s hodnotou každého výpisu případů.

Protože hodnota odpovídá případu 44 , je proměnné velikosti přiřazena hodnota Large.

příkaz break v Java switch… případ

Všimněte si, že jsme breakpříkaz použili v každém bloku případů. To je užitečné k ukončení prohlášení.

Pokud breakpříkaz není použit, jsou provedeny všechny případy po shodném případu. Napří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ýstup

 Případ 2 Případ 3 Výchozí případ

Ve výše uvedeném příkladu jsme breakpříkaz nepoužili . Zde se výraz shoduje s case 2.

Vidíte, že spolu s case 2jsou provedeny také všechny následující případy.

Toto není požadovaný výstup. Proto je nutné použít breakpříkaz s každým blokem případů .

Příklad 2: Vytváření kalkulačky pomocí příkazu switch

Níže uvedený program přijímá tři vstupy od uživatele: jeden operátor a 2 čísla . Na základě operátora poskytnutého uživatelem provede výpočet čísel. Výsledek se poté zobrazí na obrazovce.

Než projdete programem, ujistěte se, že víte o Java Scanneru, abyste získali vstup od uživatele.

 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: +, -, * nebo /: + Zadejte první číslo: 23 Zadejte druhé číslo: 21 23,0 + 21,0 = 44,0

Výstup 2

 Vyberte operátora: +, -, * nebo /: - Zadejte první číslo: 24 Zadejte druhé číslo: 13 24.0-13.0 = 11.0

Výstup 3

 Vyberte operátora: +, -, * nebo /: * Zadejte první číslo: 12 Zadejte druhé číslo: 6 12,0 * 6,0 = 72,0

Výstup 4

 Vyberte operátora: +, -, * nebo /: / Zadejte první číslo: 36 Zadejte druhé číslo: 6 36,0 / 6,0 = 6,0

Výstup 5

Vyberte operátora: +, -, * nebo /:? Zadejte první číslo: 12 Zadejte druhé číslo: 23 Neplatný operátor!

Ve výše uvedeném příkladu používáme switch… casepříkaz k provádění sčítání, odčítání, násobení a dělení.

Poznámka : Prohlášení Java switch funguje pouze s:

  • Datové typy Java Primitive: byte, short, char a int
  • Typy s výčtem Java
  • Třída řetězce Java
  • Třídy Java Wrapper: Character, Byte, Short a Integer.

Zajímavé články...