4. Kontrollstrukturen

Sowie in jeder anderen Programmiersprache gibt es auch in Java die sogenannten Kontrollstrukturen. Sicherlich fragst du dich nun, wozu die denn dienen sollen. Kurz gesagt führen Kontrollstrukturen eine Anweisung durch, wenn die bestimmte Bedingung erfüllt ist. Ansonsten wird dem Computer gesagt, etwas anderes zu tun. Um dir das zu veranschaulichen, werden wir uns jetzt ein Beispiel anschauen:


4.1 if-else

int meineZahl = 25;
if(meineZahl < 100){
    System.out.println("Deine Zahl ist kleiner als 100");
}
else{
    System.out.println("Deine Zahl ist grösser oder gleich 100");
}

In meinem Beispiel wurde zuerst eine Variable namens meineZahl mit dem Datentyp Integer erstellt und als Wert wurde 25 zugewiesen. Als nächstes folgt, wie du sehen kannst, die Kontrollstruktur.
Dazu verwendet man die if-Anweisung. Innerhalb der Klammern musst du die Bedingung einfügen. In diesem Beispiel ist die Bedingung, dass die Variable meineZahl einen kleineren Wert haben muss als 100. Doch damit etwas geschieht, wenn diese Bedingung erfüllt ist, muss man eine Anweisung in den geschweiften Klammern eingeben. Hier habe ich als Anweisung eine Textausgabe auf der Konsole genommen.

Es kann aber auch sein, dass meine bestimmte Bedingung nicht erfüllt wird. Damit der Computer auch dann etwas zu tun hat, schreiben wir eine else-Anweisung. Diese hat einen kleinen Unterscheid zur if-Anweisung, denn hier wird keine Bedingung benötigt. Also schreiben wir nach else, in geschweiften Klammern, den Befehl, den der Computer ausführen soll. Wie du oben sehen kannst, wird hier dann auf der Konsole der folgende Text ausgegeben:
„Deine Zahl ist grösser oder gleich 100“.

Nun wollen wir anschauen, wie die Kontrollstruktur aussieht, wenn man überprüfen will, ob eine Zahl in einem bestimmten Zahlenbereich liegt. Dazu müssen wir nur die Bedingung und die eintretende Folge ändern. Die Struktur bleibt hier gleich. Als Beispiel erstellen wir eine Bedingung, die verlangt, dass die Variable meineZahl einen grösseren Wert als 0 und einen kleineren als 10 hat:

int meineZahl = 6;
if(meineZahl > 0 && meineZahl < 100){
    System.out.println("Deine Zahl liegt im Zahlenbereich.");
}
else{
    System.out.println("Deine Zahl liegt nicht im Zahlenbereich.");
}


Zuallererst erstellen wir die bekannte Variable namens meineZahl, aber dieses Mal mit dem
Wert 6.
Danach müssen wir die Kontrollstruktur erstellen. Nun siehst du, dass die Bedingung etwas anders aussieht, als die erste. Hier wurde ein sogenannter Operator benutzt. Der Operator && bedeutet so viel wie „und“. Es wird überprüft, ob meineZahl grösser als 0 und kleiner als 10 ist. Wird diese Bedingung erfüllt, wird die danach folgende Konsolenausgabe ausgeführt. Wenn die Bedingung nicht erfüllt wird, wird die Ausgabe „Deine Zahl liegt nicht im Zahlenbereich.“ ausgeführt.

Doch wenn du zum Beispiel überprüfen willst, ob meineZahl einen Wert von 6 oder 10 hat, musst du einen anderen Operator verwenden. Und zwar den Operator ||. Dieser bedeutet auf Deutsch übersetzt „oder“. Auf der folgenden Tabelle siehst du die verschiedenen Operatoren, welche du für deine Kontrollstruktur verwenden kannst, und ihre Bedeutung:

kontrollstrukturen1jpg


Im nachfolgenden Beispiel zeige ich dir mit Hilfe einer if-else Kontrollstruktur den Unterschied beim Vergleichen von Integer-Werten und Strings:


String name = "Peter";
int alter = 15;
if(name.equals("Peter") && alter == 15){
    System.out.println("Der Name ist Peter und er ist 15 Jahre alt");
}
else{
    System.out.println("Falsche Person");
}


Du siehst hier, dass man Integer-Werte  mit dem doppelten Gleichheitszeichen (==) vergleicht. Bei Strings solltest du jedoch immer die .equals Methode verwenden, auch wenn dieser Vergleich mit dem doppelten Gleichheitszeichen funktioniert.


4.2 switch-case

Eine Kontrollstruktur muss nicht zwingend aus einem if und einem else Teil bestehen. Unter Umständen kann es nützlich sein, die sogenannte switch-case Kontrollstruktur zu verwenden. Sie ist besonders dann hilfreich, wenn wir eine bestimmte Anzahl an Ausgängen bereits kennen und eine dieser garantiert eintreffen sollte. Im folgenden Beispiel untersuchen wir eine Person nach ihrer Funktion in einer Unternehmung. Switch-case ist so aufgebaut, dass wir zunächst die zu untersuchenden Werte definieren. In unserem Fall die Variable name. Anschließend definieren wir die möglichen Ausgangsfälle, oder auch cases. In unserer Unternehmung arbeiten vier Personen, zwei davon als Berater. Dementsprechenden benötigen wir drei cases, wobei ein case gleich bei zwei Mitarbeitern zutrifft. Bei zwei oder mehreren Fällen, die bei einem case zutreffen, schreiben wir jeweils alle untereinander auf. Um die Folge zu definieren, setzen wir ein Doppelpunkt hinter jedem case. Nachdem das geschehen ist, breaken wir nach jedem case den Prozess. Eine Besonderheit beim switch-case ist der default. Er ist quasi wie ein Auffangbecken für alles was nicht zutrifft. Anders als bei der if-else Kontrollstruktur, ist diese keine logische Konsequenz aus einem Ausschlussverfahren, sondern für all das zuständig was uns nicht weiter interessiert. In unserem Beispiel fängt der default alle Personen auf, die nicht in unserer Unternehmung arbeiten.

String name = "Jonas";
switch (name) {
    case "Ralf":
        System.out.println("Kassierer");
        break;
    case "Tom":
    case "Jonas":
        System.out.println("Berater");
        break;
    case "Andrea":
        System.out.println("Logistiker");
        break;
    default:
        System.out.println("Die Person ist kein Mitarbeiter");
        break;
}

 

Stelle uns deine Frage


Julien Rösch


 

Amazon

 

E-Book

 

Gefällt dir CodeStarter?