Udvidet Switch-sætning
Stryg for at vise menuen
Sådan optimeres et switch-udsagn
Ligesom if-udsagnet har ternary-operatoren, har switch-udsagnet en udvidet version kaldet enhanced switch.
Lad os straks se på syntaksen:
Main.java
123456789101112switch (variable) { case value1 -> { // code block } case value2 -> { // code block } // additional cases default -> { // code block } }
Den udvidede switch-sætning anvender en forenklet syntaks med -> i stedet for case og break. Det gør det muligt at skrive korte kodeblokke for hver case direkte uden behov for eksplicitte break-udsagn.
Lad os se et eksempel på brug af et switch-udsagn. Først ser vi på et almindeligt switch-udsagn:
Main.java
123456789101112131415161718192021package 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; } } }
Lad os nu erstatte det med den forbedrede version for at se forskellen:
Main.java
123456789101112131415161718192021package 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, er syntaksen ændret, og koden er blevet kortere. Derudover behøver vi ikke længere eksplicit at skrive break-nøgleordet; compileren forstår nu, at den skal stoppe udførelsen af switch-sætningen efter at have matchet en af tilfældene.
På denne måde kan vi forenkle vores switch-sætning og skrive professionel kode.
1. Hvad er casesyntaksen for den udvidede Switch-sætning?
2. Skal vi bruge break;-nøgleordet med udvidet switch?
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat