Kursinnehåll
Java Fördjupad
Java Fördjupad
Förbättrad Switch-sats
Hur optimerar man ett switch-uttryck?
Precis som if
-satsen har ternära operatorn, har switch
-satsen en förbättrad version som kallas förbättrad switch.
Låt oss direkt titta på syntaxen:
Main.java
switch (variable) { case value1 -> { // code block } case value2 -> { // code block } // additional cases default -> { // code block } }
Den förbättrade switch-satsen använder en förenklad syntax med ->
istället för case
och break
. Det gör det möjligt att skriva koncisa kodblock för varje fall direkt utan behov av explicita break
-satser.
Låt oss titta på ett exempel på användning av en switch-sats. Först ser vi på en vanlig switch-sats:
Main.java
package com.example; public class Main { public static void main(String[] args) { int a = 10; switch (a) { case 5: System.out.println("five"); break; case 0: System.out.println("zero"); break; case 10: System.out.println("ten"); break; default: System.out.println("no value"); break; } } }
Låt oss nu ersätta det med den förbättrade versionen för att se skillnaden:
Main.java
package com.example; public class Main { public static void main(String[] args) { int a = 10; switch (a) { case 5 -> { System.out.println("five"); } case 0 -> { System.out.println("zero"); } case 10 -> { System.out.println("ten"); } default -> { System.out.println("no value"); } } } }
Som du kan se har syntaxen förändrats och koden har blivit kortare. Dessutom behöver vi inte längre uttryckligen skriva nyckelordet break
; kompilatorn förstår nu att den ska sluta köra switch
-satsen efter att en av fallen matchats.
På detta sätt kan vi förenkla vår switch
-sats och skriva professionell kod.
1. Vad är syntaxen för case i den förbättrade Switch
-satsen?
2. Behöver vi använda nyckelordet break;
med förbättrad switch?
Tack för dina kommentarer!