Zum Hauptinhalt

Grundlegendende Programmierkonzepte in Java

Else

Wenn jetzt eine Andere Person das Programm verwendet, so wird sie nicht begrüßt. Es geschieht einfach garnichts. Es hat sich gezeigt, dass die Anwender eines Programms sich wundern, wenn etwas geschieht, was sie nicht erwarten. Besonders genervt sind sie aber meistens, wenn das Programm ihnen nicht einmal die Möglichkeit gibt das Problem nachzuvollziehen. Aus diesem Grund sollten wir das Programm etwas erweitern. Mit Hilfe der else Struktur können wir alles abgelehnten Benutzern dieses mitteilen. Ein Else kann immer nur in Verbindung mit einem Vorangegangenen If stehen. Der Aufbau ist dann:


 if( Wahrheitsaussage ) {
     Anweisung;
 } else {
     AlternatiiveAnweisung;
 }    

Java führt jetzt die Erste Anweisung aus, wenn die Wahrheitsaussage wahr ist und wenn sie falsch ist, wird die alternative Anweisung ausgeführt. Unser Beispiel kann entsprechend erweitert werden:



 if(name.equals("Jan")) {
     System.out.println("Hallo " + name + "!");
 } else {
     System.out.println("Der Benutzer ist abgelehnt.");
 }   

Es muss hinter dem Schlüsselwort else nicht direkt ein Block geschrieben werden. Es ist auch möglich mehrere If miteinander zu verbinden:


 if( Wahrheitsaussage ) {
     Anweisung1;
 } else if( ZweiteWahrheitsaussage ) {
     Anweisung2;
 } else if( DritteWahrheitsaussage ) {
     Anweisung3;
 } else {
     AlternatiiveAnweisung;
 }    

Hierbei muss man wissen, dass nur die Anweisungen des ersten If mit wahrer Aussage ausgeführt werden. Ist keine der Aussagen wahr, so werden die Anweisungen des Else ausgeführt.

Welche Ausgaben erzeugen die folgenden beiden Programmauszüge? 


 
String tier = "Katze"; if( tier.equals("Katze") ) { System.out.println("Katzen sind niedlich"); } else if( tier.equals("Katze") ) { System.out.println("Katzen fressen Mäuse"); } else { System.out.println("Alles außer Katzen"); }

Variante 2:

 
String tier = "Katze"; if( tier.equals("Katze") ) { System.out.println("Katzen sind niedlich"); } if( tier.equals("Katze") ) { System.out.println("Katzen fressen Mäuse"); } else { System.out.println("Alles außer Katzen"); }
If, Else und Else-if

Durch die If-Struktur kann die Ausführung eines Programmabschnitts an eine Bedingung geknüpft werden.

if( Wahrheitsaussage ) { Anweisung; }

Wollen wir ein Entweder-Oder darstellen, so können wir ein If mit einem Else verbinden.


 if( Wahrheitsaussage ) {
     Anweisung;
 } else {
     AlternatiiveAnweisung;
 }

Wir können aber auch mehrere Ifs miteinander verbinden, so dass der Code der ersten erfüllten Bedingung ausgeführt wird. Hierfür verwendet man das Else-If.

 
 if( Wahrheitsaussage ) {
     Anweisung1;
 } else if( ZweiteWahrheitsaussage ) {
     Anweisung2;
 } else {
     AlternatiiveAnweisung;
 }