ChristophTutorials - (Video)Tutorialseite und IT-Blog

Zitat der Woche

Früher hatten wir die spanische Inquisition. Jetzt haben wir die Kompatibilität.
- Herbert Klaeren

Letzte Artikel

Zufällige Artikel

Verzeichnisse

Blogverzeichnis - Blog Verzeichnis bloggerei.de Blogverzeichnis Blog Verzeichnis Blog Top Liste - by TopBlogs.de Blog Button
Datenschutzerklärung
Impressum
Java - Abfragen - 25.03.2011
In diesem Tutorial wird gezeigt, wie man den Programmablauf durch das Abfragen von Werten steuern kann.
Die if-Abfrage
Für eine if-Abfrage beginnen wir mit dem Schlüsselwort if, dann folgt ein Paar Klammern, darin ein boolean-Wert (siehe "Java - Variablen (primitive)"). Wenn dieser auf true steht, wird der nachfolgende Befehl ausgeführt, ansonsten wir er einfach ignoriert. Nun ein kleines Beispiel:
public class Wahrheit {
	public static void main(String[] args) {
                boolean Wahrheit = true;

                if(Wahrheit)
                    System.out.println("Wahrheit ist wahr.");
        }
}
Wie man sieht, wird der Befehl, der nur unter Bedingung der Abfrage ausgeführt wird zur besseren Lesbarkeit eingerückt. Dem Compiler sind die paar Leerzeichen egal, für den Menschen bietet es jedoch entscheidende Vorteile in der Übersichtlichkeit.
Größer, kleiner, gleich
Wesentlich interessanter ist die Möglichkeit der Abfrage jedoch, wenn man die Werte von Variablen prüfen kann. Das gelingt mit folgenden Vergleichsoperatoren:
Schreibweise Gesprochen Erklärung
== gleich prüft auf Gleichheit
< kleiner als prüft auf ob der erste Wert kleiner als der zweite ist
> größer als prüft auf ob der erste Wert größer als der zweite ist
<= kleiner gleich prüft auf ob der erste Wert kleiner oder gleich dem zweite ist
>= größer gleich prüft auf ob der erste Wert größer oder gleich dem zweite ist
!= ungleich prüft auf ob der erste Wert nicht gleich dem zweiten ist
Das kann dann folgendermaßen aussehen:
public class Wahrheit {
	public static void main(String[] args) {
                boolean Wahrheit = 2 < 50;

                if(Wahrheit)
                    System.out.println("2 ist kleiner als 50");
        }
}
Die anderen Operatoren funktionieren genauso. Statt den Zahlen lassen sich natürlich auch Variablen, beispielsweise int verwenden.
Etwas direkter
Normalerweise schreibt man den Vergleich direkt in die Klammern der if-Abfrage. Das sieht dann etwa so aus:
public class Wahrheit {
	public static void main(String[] args) {
                if(2 < 50)
                    System.out.println("2 ist kleiner als 50");
        }
}
Mehrere Befehle zusammenfassen
Es lassen sich auch mehrere Befehle zu einem Anweisungsblock zusammenfassen um mehr als eine Anweisung unter der Bedingung ausführen zu können. Ein Anweisungsblock wird von geschweiften Klammern umschlossen:
public class Wahrheit {
	public static void main(String[] args) {
                if(2 < 50){
                    System.out.println("2 ist kleiner als 50");
                    System.out.println("Das stimmt wirklich!");
                }
        }
}
Ansonsten...
Häufig soll es, wenn der if-Zweig nicht ausgeführt wird, alternativen Code geben. Der nach else folgende Befehl wird ausgeführt, wenn die if-Abfrage nicht zutrifft. Das kann etwa so aussehen:
public class Wahrheit {
	public static void main(String[] args) {
                int a = 10;
                int b = 20;

                if(a <= b)
                    System.out.println("a ist kleiner oder gleich b");
                else
                    System.out.println("a ist größer b");
        }
}
Auch bei else ist es möglich mehrere Befehle in einem Anweisungsblock auszuführen.
Mehrere Möglichkeiten
Auch manchmal gebraucht wird die Möglichkeit, mehrere Möglichkeiten abzufragen. Dafür kann man in den meisten Fällen auch mehrere if-Abfragen hinter einander stellen. Problematisch wird das jedoch zum Beispiel, wenn es zu mehreren if-Abfragen einen else-Zweig geben soll. Dafür gibt es else if. Zunächst wieder ein Stück Code:
public class Wahrheit {
	public static void main(String[] args) {
                int Zahl = 250;

                if(Zahl < 100)
                    System.out.println("Die Zahl ist kleiner als 100");
                else if(Zahl < 200)
                    System.out.println("Die Zahl ist kleiner als 200");
                else if(Zahl < 300)
                    System.out.println("Die Zahl ist kleiner als 300");
                else
                    System.out.println("Die Zahl ist größer/gleich 300");
        }
}
Stimmt eine der Abfragen, werden die Restlichen übersprungen.
Verschachteln
if-Abfragen lassen sich auch verschachteln:
public class Wahrheit {
	public static void main(String[] args) {
            int Wert = 123;

            if(Wert > 100)
                if(Wert < 200)
                    System.out.println("Wert ist zwischen 200 und 300");
        }
}
Es sind in diesem Fall keine geschweiften klammern nötig, da es sich nur um einen Befehl handelt. Mit Klammert könnte man es aber übersichtlicher gestalten:
public class Wahrheit {
	public static void main(String[] args) {
            int Wert = 123;

            if(Wert > 100){
                if(Wert < 200)
                    System.out.println("Wert ist zwischen 200 und 300");
            }
        }
}
Es gibt auch die Möglichkeit verschiedene Abfragen direkt zu verknüpfen. Das folgt in einem weiteren Tutorial.

Kommentare:

- kein Kommentar -
Um einen Kommentar zu schreiben ist eine Anmeldung nötig.