Switch Case Java
Wie funktioniert der Switch Case in Java? Das erfährst du hier und im Video anhand von vielen Beispielen!
Inhaltsübersicht
Java Switch Case einfach erklärt
Ein Switch Case in Java ersetzt mehrere if-Anweisungen durch einen Ausdruck.
int geburtsjahr = 2011;
switch (geburtsjahr){
case 2010:
System.out.println(“Kind ist in Gruppe A“);
break;
case 2011:
System.out.println(“Kind ist in Gruppe B“);
break;
case 2012:
System.out.println(“Kind ist in der Gruppe C“);
break;
default:
System.out.println(“Kind ist in keiner Gruppe“);
}
Ausgabe: “Kind ist in Gruppe B“
- Mit
switch
wird das zu überprüfende Geburtsjahr (hier:2011
) übergeben. - Das Geburtsjahr wird mit jedem der Cases (Fälle) verglichen. Stimmt das Geburtsjahr mit einem
case
überein, wird der Codeblock darunter ausgeführt. - Kommt das Programm bei
break
an, überprüft es keinen der folgenden Cases mehr. Im Beispiel wird alsocase 2012
nicht mehr überprüft. - Trifft keiner der Cases zu, wird der Codeblock unter
default
ausgeführt.
Wichtig: Die Variable, die im Switch-Statement steht, muss vom Typ int
, String
, byte
, short
, char
oder enum
sein. Variablen anderer Datentypen, zum Beispiel floats oder Objekte, funktionieren nicht.
Java Switch Case String
Neben Zahlen kannst du auch Strings mit einem Java Switch Case überprüfen.
String wort = “zwei“;
switch (wort){
case “eins“:
System.out.println(“one“);
break;
case “zwei“:
System.out.println(“two“);
break;
case “drei“:
System.out.println(“three“);
break;
default:
System.out.println(“Das Wort ist unbekannt.“);
}
Ausgabe: “two“
Wichtig: Denke immer an den Doppelpunkt am Ende der case
-Zeile.
Multiple Case Statement
Es gibt verschiedene Varianten, ein Java Switch Case Statement aufzuschreiben. Sie sind vor allem dann nützlich, wenn du viele verschiedene Cases überprüfen willst, die teilweise dieselbe Ausgabe haben sollen (Multiple Case Statement).
Das kannst du auf zwei verschiedene Arten aufschreiben: Die beiden folgenden Beispiele sind bis auf die Notation identisch.
Mehrere Cases untereinander:
switch (geburtsjahr){
case 2011:
case 2012:
case 2013:
System.out.println(“Kind ist in Gruppe A“);
break;
case 2014:
case 2015:
System.out.println(“Kind ist in Gruppe B“);
break;
default:
System.out.println(“Kind ist in keiner Gruppe“);
}
Mehrere Cases nebeneinander:
switch (geburtsjahr){
case 2011, 2012, 2013:
System.out.println(“Kind ist in Gruppe A“);
break;
case 2014, 2015:
System.out.println(“Kind ist in Gruppe B“);
break;
default:
System.out.println(“Kind ist in keiner Gruppe“);
}
Switch-Ausdrücke (ab Java 12)
Mit Switch-Ausdrücken kannst du das Ergebnis des Switch-Statements in einer Variable speichern (hier: gruppe
). Der Doppelpunkt nach einem Case und die break-Anweisungen fallen dabei weg. Stattdessen verwendest du den Pfeiloperator.
String gruppe = switch (geburtsjahr){
case 2011, 2012, 2013 -> “Kind ist in Gruppe A“;
case 2014, 2015 -> “Kind ist in Gruppe B“;
default -> “Kind ist in keiner Gruppe“;
}
Wenn du mehr als einen Befehl in einem Case ausführen möchtest, kannst du das Keyword yield
verwenden (ab Java 13). Der Ausdruck hinter yield
wird dann in der Variable gespeichert:
int geburtsjahr = 2011;
String gruppe = switch (geburtsjahr){
case 2011, 2012, 2013 -> {
System.out.println(“Kind ist in Gruppe A“);
yield “Kind ist in Gruppe A“;
}
case 2014, 2015 -> {
System.out.println(“Kind ist in Gruppe B“);
yield “Kind ist in Gruppe B“;
}
default -> {
System.out.println(“Kind ist in keiner Gruppe“);
yield “Kind ist in keiner Gruppe“;
}
}
Java Interface
Damit Java dir zukünftig keine Probleme mehr bereitet, haben wir dir dazu noch einige weitere Videos erstellt. In unserem Video zu den Java Interfaces erfährst du, wie diese aufgebaut sind und wie du sie in deinem Java Code verwenden kannst. Schau es dir gleich an!