Java Reference
In-Depth Information
Das Schlüsselwort
switch
kann dabei etwa übersetzt werden mit »für den Fall, dass«.
Übersetzen Sie das Schlüsselwort
case
mit »entspricht«, dann ergibt sich für die
Schreibweise der
switch
-
case
-Anweisung etwa folgende Bedeutung: Für den Fall, dass
der in Klammern stehende Ausdruck der Konstante1 entspricht, so sind die hinter dem
Doppelpunkt stehenden Anweisungen bis zur nächsten
break
-Anweisung auszuführen.
Hinter dem Schlüsselwort
default
können am Ende Anweisungen aufgelistet werden,
die ausgeführt werden sollen, wenn keiner der zuvor aufgeführten Fälle zutrifft.
3
Dabei ist Folgendes zu beachten:
Das Ergebnis des Ausdrucks hinter dem Schlüsselwort
switch
darf nur einer der fol-
genden Datentypen sein:
char
,
byte
,
short
oder
int
.
Hinweis
Seit Java 7 ist es nun auch möglich, hinter dem Schlüsselwort switch den Datentyp
String
zu verwenden. Dies bedeutet eine deutliche Vereinfachung, wenn das Pro-
gramm auf unterschiedliche Zeichenketten, wie z. B. die Wochentage »Montag«,
»Dienstag« usw., reagieren soll.
Die Werte hinter dem Schlüsselwort
case
müssen Konstanten sein und alle einen
unterschiedlichen Wert haben.
Hinter dem Doppelpunkt können jeweils eine oder auch mehrere Anweisungen ste-
hen. Stehen dort mehrere Anweisungen, ist keine Blockbildung mit geschweiften
Klammern erforderlich.
Es werden die Anweisungen hinter der Konstante ausgeführt, deren Wert mit dem
Ergebnis des Ausdrucks übereinstimmt. Die Anweisungen aller folgenden Sprung-
marken werden ebenfalls ausgeführt, bis auf eine
break
-Anweisung gestoßen wird.
Ohne
break
-Anweisung werden also die Anweisungen aller folgenden
case
-Fälle aus-
geführt.
Die Anweisungen hinter
default
werden dann ausgeführt, wenn zu dem Wert des
Ausdrucks keine passende
case
-Konstante vorgefunden wird. Der
default
-Teil kann
auch komplett entfallen.
In vielen Fällen soll grundsätzlich nur ein
case
-Block ausgeführt werden. Sie müssen
dann als letzte Anweisung jedes
case
-Blocks die Anweisung
break
eintragen.
/* Vokaltest mit switch - case
* Nach der Eingabe eines Zeichens wird geprüft,
*obessichumeinenVokalhandelt.
* Das Ergebnis wird in einem MessageDialog ausgegeben.