If-Anweisung in Java
If-Anweisung und IF-Else Verschachtelungen
Die If-Anweisung dient dazu einen Ausdruck auszuwerten und je nach Ergebnis weiter zu verfahren. Der Ausdruck muss dabei einen Wert vom Datentyp boolean haben. Um If-Anweisungen wird man im kaum einem Programm herumkommen. Das simple Konzept ist sehr mächtig und kann in den unterschiedlichsten Situationen eingesetzt werden.
If-Anweisung Syntax
Nachfolgend die Syntax einer if-Anweisung, sowie Struktogramm einer if-Anweisung.
if (Bedingung) {
// Weitere Operationen
}
If-Anweisung Beispiel
Nun noch ein konkretes Beispiel zu der If-Anweisung. Im nachfolgenden Codestück soll überprüft werden ob die Integer Variable var den Wert 3 besitzt. Gibt diese Anweisung ein true zurück, was im Beispiel der Fall ist, dann wird „Hello World!“ auf dem Bildschirm ausgegeben.
int var=3;
if (var==3) {
System.out.println("Hello World!");
}
Anmerkung: In diesem Fall wurde die Variable in der If-Anweisung also erst einmal auf Gleichheit zu einem bestimmten Wert geprüft. Da dies ein Integer-Wert war, konnte die Gleichheit mit dem Operator == geprüft werden. Bei einem String würde das nicht ohne weiteres funktionieren. Hier sollte man auf die equals-Funktion zurückgreifen.
Es können auch Bedingungen verknüpft werden, z.B. durch eine UND-Verknüpfung (&&) oder eine ODER-Verknüpfung (||), siehe nachfolgendes Beispiel, bei dem kein „Hello World!“ ausgegeben wird, da zwar var1=3 aber var2 nicht 4 ist. Durch die UND-Verknüpfung müssen aber beide Bedingungen ein „Wahr“-zurückgeben.
int var1=3;
int var2=3;
if (var1==3 && var2==4) {
System.out.println("Hello World!");
}
If-Else Konstrukt
Nun kann es sein, dass falls die Anweisung in der If-Bedinung nicht ein „wahr“ ergibt, man dennoch entsprechend verfahren möchte. Deshalb gibt es das If-Else-Konstrukt. Gibt die if-Bedingung ein false (also nicht wahr) zurück, dann werden anstatt der Befehle die in den Klammern hinter der if-Bedinung stehen die Befehle die nach else kommen ausgeführt. Man könnte das Konstrukt mit entweder-oder übersetzen. Entweder die If-Bedingung stimmt und ich mache folgendes oder die if-Bedingung stimmt nicht und ich mache das andere hinter else. Nie werden aber beide Befehle die in von If und von Else umfasst werden ausgeführt.
Nachfolgend die Syntax einer if-else-Anweisung, sowie Struktogramm einer if-else-Anweisung.
if (Bedingung) {
// Anweisung
} else {
// Andere Anweisungen
}
Mit if-else Anweisungen kann man seinen Code weiter verzweigen, in dem man einfach mehrere if-elsen-Anweisungen nacheinander schreibt:
if (Bedingung) {
// Anweisung
} else if (Bedingung2) {
// Andere Anweisungen
} else {
// Noch einmal andere Anweisungen
}
Ebenfalls sind verschachtelte if-else-Anweisungen möglich, in dem im else-Zweig beispielsweise noch einmal eine if-Anweisung erscheint:
if (Bedingung) {
// Anweisung
} else if (Bedingung2) {
if (Bedingung3) {
// Andere Anweisungen
}
}