Mit der If-Anweisung kann man einzelne Bedingungen abfragen. Natürlich kann man diese Bedingungen auch hintereinander
ausführen, um mehrere Bedingungen abzufragen. Zum Beispiel:
if(Zahl == 5) {
System.out.println("Die Zahl war fünf");
}
else if(Zahl == 4) {
System.out.println("Die Zahl war vier");
}
else if(Zahl == 3) {
System.out.println("Die Zahl war drei");
}
else if(Zahl == 2) {
System.out.println("Die Zahl war zwei");
}
else if(Zahl == 1) {
System.out.println("Die Zahl war eins");
}
else {
System.out.println("Die Zahl war nicht zwischen eins und fünf");
}
|
In diesem Beispiel wird gestestet, ob der Inhalt der Variable Zahl eine Zahl zwischen 1 und 5 ist. Trifft die Bedingung
nicht zu, wird eine Fehlermeldung ausgegeben.
Diese Methode kann bei vielen Möglichkeiten auf die dauer wirklich anstrengend werden. Man kommt dabei auch schnell
durcheinander. Es stellt sich die Frage ob es nicht einfacher geht?
Es geht Einfacher! Mit der Anweisung switch - case. Unser Beispiel würde dann so aussehen:
switch(Zahl) {
case 1:
System.out.println("Die Zahl war eins");
break;
case 2:
System.out.println("Die Zahl war zwei");
break;
case 3:
System.out.println("Die Zahl war drei");
break;
case 4:
System.out.println("Die Zahl war vier");
break;
case 5:
System.out.println("Die Zahl war fünf");
break;
default:
System.out.println("Die Zahl war nicht zwischen eins und fünf");
}
|
Dieses Beispiel tut genau das gleiche, wie das Beispiel oben. Es testet, ob der Wert in Zahl zwischen 1 und 5 ist und gibt eine
Fehlermeldung aus, wenn dies nicht der Fall ist. Das ganze beginnt mit switch(Zahl), wobei Zahl ein Ausdruck sein muss in dem entweder eine ganze Zahl
oder ein einzelner Buchstabe steht. case "fünf": würde NICHT funktionieren.
Jeder Befehlsblock muss mit break; abgeschlossen werden.
Mit default: wird eine Antwort erzeugt, die Ausgegeben wird, wenn keine der Bedingungen zutrifft.
|