Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Switch-Case-Anweisung | Grundtypen und Operationen
Java-Grundlagen
course content

Kursinhalt

Java-Grundlagen

Java-Grundlagen

1. Erste Schritte
2. Grundtypen und Operationen
3. Schleifen
4. Arrays
5. Zeichenkette

book
Switch-Case-Anweisung

Behandlung mehrerer verschiedener Bedingungen

Wenn viele Bedingungen überprüft werden müssen, ist die Verwendung mehrerer if-else-Ketten oft nicht zweckmäßig.

Zum Beispiel:

java

Main

copy
12345678910111213141516171819
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `if` statement int a = 30; if (a == 10) { System.out.println(10); } else if (a == 20) { System.out.println(20); } else if (a == 30) { System.out.println(30); } else if (a == 40) { System.out.println(40); } else { System.out.println(a); } } }

Man erkennt, dass dies weder übersichtlich noch professionell wirkt. Für solche Fälle stellt Java die switch-case-Anweisung zur Verfügung.

switch-case-Anweisung

Die switch-case-Anweisung besteht aus mehreren Teilen:

java

Main

copy
123456789
switch (expression) { case value_1: // Code to be executed if expression matches `value_1` break; // Break is used to exit the `switch` statement. case value_2: // Code to be executed if expression matches `value_2` break; // Break is used to exit the `switch` statement. ............ default: // Code to be executed if no cases match // Optional, but executed if no other case matches }

Im obigen Code sehen Sie, dass wir Switch-Blöcke verwenden, um Operationen selektiv auszuführen. Wir verlassen uns auf den Ausdruck, der sich leicht von einer Bedingung unterscheidet. Dort fügen wir einen Wert oder einen Ausdruck ein. Zum Beispiel 10 / 2. In diesem Fall wird der Case-Block mit der Signatur case 5 ausgeführt, da der Ausdruck oben 5 ergibt.

Wir können hier auch eine Bedingung verwenden. In diesem Fall müssen wir einen booleschen Ausdruck im Ausdrucksblock schreiben, und dieser sollte etwa so aussehen: 10 / 2 == 5. Dann schreiben Sie zwei Cases darunter:

java

Aber diese Struktur ist fast nicht von einer normalen if-else-Anweisung zu unterscheiden.

Das Schlüsselwort "break"

Wir verwenden dieses Schlüsselwort, um die Ausführung einer switch-case-Anweisung zu beenden und deren Block zu verlassen. Dieses Wort wird häufig in Schleifen verwendet, die wir in den folgenden Kapiteln besprechen werden. Verwenden Sie dieses Schlüsselwort, wenn Sie einen Codeblock verlassen und dessen Ausführung stoppen müssen.

Verbesserung des oben geschriebenen Codes durch Verwendung der switch-case-Anweisung:

java

Main

copy
123456789101112131415161718192021222324
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `switch` statement int a = 30; switch (a) { case 10: System.out.println(10); break; case 20: System.out.println(20); break; case 30: System.out.println(30); break; case 40: System.out.println(40); break; default: System.out.println("There is no matching value"); } } }

Es ist ersichtlich, dass der Code deutlich übersichtlicher und leichter lesbar sowie erweiterbar geworden ist. Es ist nicht mehr notwendig, für jede zusätzliche Bedingung eine neue if-Anweisung zu schreiben. Stattdessen kann einfach ein weiterer case-Block zur switch-case statement hinzugefügt werden.

Betrachten wir das Schema des switch-case-Blocks:

Wie wir sehen können, kann es beliebig viele Cases geben. Jeder Case benötigt eine eigene Bedingung und einen eigenen Code, der ausgeführt wird, wenn das Programm den jeweiligen Case-Block erreicht. Es ist ratsam, das Schlüsselwort break zu verwenden, da das Programm den Switch-Block sonst nicht verlässt, bis alle Case-Blöcke durchlaufen wurden. Der Default-Block wird ausgeführt, wenn keiner der Case-Blöcke betreten wurde oder kein break-Schlüsselwort verwendet wurde.

Betrachten wir ein weiteres Beispiel ohne break-Schlüsselwörter:

java

Main

copy
1234567891011121314151617181920
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `switch` statement int a = 10; switch (a) { case 10: System.out.println(10); case 20: System.out.println(20); case 30: System.out.println(30); case 40: System.out.println(40); default: System.out.println("There is no matching value"); } } }

Wir haben mehrere Werte erhalten, die von unseren Erwartungen abweichen. Zusätzlich haben wir Informationen aus den Blöcken case 10 und default erhalten. Genau aus diesem Grund verwenden wir das Schlüsselwort break nach jedem Block. Auf diese Weise verlässt das Programm die switch-Anweisung und setzt seine Ausführung fort.

1. Was wird auf der Konsole ausgegeben?

2. Warum benötigen wir das Schlüsselwort break?

question mark

Was wird auf der Konsole ausgegeben?

Select the correct answer

question mark

Warum benötigen wir das Schlüsselwort break?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 6

Fragen Sie AI

expand
ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

course content

Kursinhalt

Java-Grundlagen

Java-Grundlagen

1. Erste Schritte
2. Grundtypen und Operationen
3. Schleifen
4. Arrays
5. Zeichenkette

book
Switch-Case-Anweisung

Behandlung mehrerer verschiedener Bedingungen

Wenn viele Bedingungen überprüft werden müssen, ist die Verwendung mehrerer if-else-Ketten oft nicht zweckmäßig.

Zum Beispiel:

java

Main

copy
12345678910111213141516171819
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `if` statement int a = 30; if (a == 10) { System.out.println(10); } else if (a == 20) { System.out.println(20); } else if (a == 30) { System.out.println(30); } else if (a == 40) { System.out.println(40); } else { System.out.println(a); } } }

Man erkennt, dass dies weder übersichtlich noch professionell wirkt. Für solche Fälle stellt Java die switch-case-Anweisung zur Verfügung.

switch-case-Anweisung

Die switch-case-Anweisung besteht aus mehreren Teilen:

java

Main

copy
123456789
switch (expression) { case value_1: // Code to be executed if expression matches `value_1` break; // Break is used to exit the `switch` statement. case value_2: // Code to be executed if expression matches `value_2` break; // Break is used to exit the `switch` statement. ............ default: // Code to be executed if no cases match // Optional, but executed if no other case matches }

Im obigen Code sehen Sie, dass wir Switch-Blöcke verwenden, um Operationen selektiv auszuführen. Wir verlassen uns auf den Ausdruck, der sich leicht von einer Bedingung unterscheidet. Dort fügen wir einen Wert oder einen Ausdruck ein. Zum Beispiel 10 / 2. In diesem Fall wird der Case-Block mit der Signatur case 5 ausgeführt, da der Ausdruck oben 5 ergibt.

Wir können hier auch eine Bedingung verwenden. In diesem Fall müssen wir einen booleschen Ausdruck im Ausdrucksblock schreiben, und dieser sollte etwa so aussehen: 10 / 2 == 5. Dann schreiben Sie zwei Cases darunter:

java

Aber diese Struktur ist fast nicht von einer normalen if-else-Anweisung zu unterscheiden.

Das Schlüsselwort "break"

Wir verwenden dieses Schlüsselwort, um die Ausführung einer switch-case-Anweisung zu beenden und deren Block zu verlassen. Dieses Wort wird häufig in Schleifen verwendet, die wir in den folgenden Kapiteln besprechen werden. Verwenden Sie dieses Schlüsselwort, wenn Sie einen Codeblock verlassen und dessen Ausführung stoppen müssen.

Verbesserung des oben geschriebenen Codes durch Verwendung der switch-case-Anweisung:

java

Main

copy
123456789101112131415161718192021222324
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `switch` statement int a = 30; switch (a) { case 10: System.out.println(10); break; case 20: System.out.println(20); break; case 30: System.out.println(30); break; case 40: System.out.println(40); break; default: System.out.println("There is no matching value"); } } }

Es ist ersichtlich, dass der Code deutlich übersichtlicher und leichter lesbar sowie erweiterbar geworden ist. Es ist nicht mehr notwendig, für jede zusätzliche Bedingung eine neue if-Anweisung zu schreiben. Stattdessen kann einfach ein weiterer case-Block zur switch-case statement hinzugefügt werden.

Betrachten wir das Schema des switch-case-Blocks:

Wie wir sehen können, kann es beliebig viele Cases geben. Jeder Case benötigt eine eigene Bedingung und einen eigenen Code, der ausgeführt wird, wenn das Programm den jeweiligen Case-Block erreicht. Es ist ratsam, das Schlüsselwort break zu verwenden, da das Programm den Switch-Block sonst nicht verlässt, bis alle Case-Blöcke durchlaufen wurden. Der Default-Block wird ausgeführt, wenn keiner der Case-Blöcke betreten wurde oder kein break-Schlüsselwort verwendet wurde.

Betrachten wir ein weiteres Beispiel ohne break-Schlüsselwörter:

java

Main

copy
1234567891011121314151617181920
package com.example; public class Main { public static void main(String[] args) { // You can change the value of the variable `a` to test the `switch` statement int a = 10; switch (a) { case 10: System.out.println(10); case 20: System.out.println(20); case 30: System.out.println(30); case 40: System.out.println(40); default: System.out.println("There is no matching value"); } } }

Wir haben mehrere Werte erhalten, die von unseren Erwartungen abweichen. Zusätzlich haben wir Informationen aus den Blöcken case 10 und default erhalten. Genau aus diesem Grund verwenden wir das Schlüsselwort break nach jedem Block. Auf diese Weise verlässt das Programm die switch-Anweisung und setzt seine Ausführung fort.

1. Was wird auf der Konsole ausgegeben?

2. Warum benötigen wir das Schlüsselwort break?

question mark

Was wird auf der Konsole ausgegeben?

Select the correct answer

question mark

Warum benötigen wir das Schlüsselwort break?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 6
Wir sind enttäuscht, dass etwas schief gelaufen ist. Was ist passiert?
some-alt