If-Anweisung
Inhaltsverzeichnis
if-Anweisung
Ein if-Anweisung, auch if-Abfragen oder if-Verzweigungen genannt, wird benötigt, um den Programmablauf durch eine Bedingung zu verzweigen bzw. zu verändern.
In unserem Beispiel erstellen wir eine Klasse, die wir if-Abfrage nennen. Danach deklarieren wir eine Variable zahl vom Typ int und definieren sie mit dem Wert '10'. Jetzt kommen wir zu unseren if-Abfrage. In Klammern nach dem if steht die Bedingung, die getestet wird. Ist diese wahr, wird der Block nach dem if ausgeführt, ist die Bedingung nicht wahr, wird dieser Block nicht ausgeführt.
public class IfAbfrage {
public static void main(String[] args) {
int zahl = 10;
if(zahl == 10)
{
System.out.print("Die Bedingung ist wahr.");
}
}
}
if-else-Anweisung
Es gibt noch eine zweite Variante der if-Anweisung, die so genannte if-else Anweisung. Mit dieser if-else Konstruktion können Sie wahre und nicht wahre Bedingungen ausführen.
In unserem Beispiel wird der else-Block ausgeführt, da die Bedingung der if-Anweisung nicht wahr ist.
public class IfAbfrage {
public static void main(String[] args) {
int zahl = 10;
if(zahl != 10)
{
System.out.print("Die Bedingung ist wahr.");
}
else
{
System.out.print("Die Bedingung ist nicht wahr.");
}
}
}
Als Beispiel siehe auch Einfaches Quiz
else-if-Anweisung
Eine dritte Variante bietet die Möglichkeit mehrere if-else-Anweisungen in einem Anweisungsblock ohne Verschachtelungen zu kombinieren.
Dabei werden die Bedigungen aller if-Anweisungen solange linear überprüft, bis eine Anweisung wahr ist oder die else-if-Anweisung zu Ende ist. Wird eine der Anweisungsüberprüfungen mit wahr ausgewertet, so wird der entsprechende Code ausgeführt und der else-if-Anweisungsblock anschließend ohne weiter Überprüfungen verlassen.
Ein mit der else-if-Anweisung vergleichbares Konstrukt ist die Switch-case-Anweisung.
public class IfAbfrage {
public static void main(String[] args) {
int zahl = 10;
if(zahl == 10)
{
System.out.print("Die erste Bedingung ist die erste wahre Bedingung.");
}
else if(zahl > 10)
{
System.out.print("Die zweite Bedingung ist die erste wahre Bedingung.");
}
else if(zahl <= 5)
{
System.out.print("Die dritte Bedingung ist die erste wahre Bedingung.");
}
else
{
System.out.print("Keine der Bedingungen ist wahr.");
}
}
}
Fehlerhafte if-Anweisungen
Was man oft bei Programmieranfängern sieht, ist die doppelte Abfrage, ob etwas wahr oder falsch ist.
Beispiel
if(textfield.isEditable() == true) {
...
}
Die Methode isEditable()
aus javax.swing.JTextComponent
von der auch JTextField
erbt, liefert bereits einen Wahrheitswert zurück.
Wenn das Textfeld also editierbar ist, wird die Rückgabe der isEditable()-Methode true
sein. Es ist hier also völlig unnötig, noch mal mit einem weiteren boolschen Wert zu vergleichen.
Die berichtigte Zeile im obigen Code-Beispiel sollte daher so aussehen:
if(textfield.isEditable()) {
...
}
Siehe auch
Fragen
Das Thema wurde nicht ausreichend behandelt? Du hast Fragen dazu und brauchst weitere Informationen? Lass Dir von uns helfen!
- Besuche uns im Byte-Welt-Forum
- Besuche unseren Chat
Wir helfen dir gerne!
Dir hat dieser Artikel gefallen? Oder Du hast Fehler entdeckt und möchtest zur Berichtigung beitragen? Prima! Schreibe einen Kommentar!
Du musst angemeldet sein, um einen Kommentar abzugeben.