Kontrollstrukturen
Kontrollstrukturen steuern denProgrammablauf.
Verzweigung (if – else, switch – case)
Die einfachst Struktur ist die if - else if - else, wobei sowohl das else if als auch das else als auch beide ausfallen können:
Statt w und ww kann jeder Java Ausdruck eintreten, der einen boolschen Wert ergibt.
Da die If-Abfrage mit anschliessender Zuweisung relativ häufigvorkommt, gibt es eine etwas verwirrende verkürzte Schreibweise:
// Ausführliche Schreibweise der bedingten Zuweisung
int a=0;
if(b>c) {
a=-1;
}
// Kryptische Kurzschreibweise.
int a= (b>c) ? -1 : 0 ;
Switch - case
Mit switch wird der numerische Wert angezeigt, über den verzweigt werden soll. Hinter case finden wird explizit alleFälle, die unterschieden werden. Ein Verhalten für den Fall, dass die definierten Fälle nicht zutreffen, kann mit default angeben werden; der default – Zweig muss am Ende stehen, ansonsten verzweigt der Programmablauf sofort nach default. Jeder case- Block kann eine Reihe von Anweisungen enthalten. Ab case wird stets bis zum nächsten break ausgeführt, auch wenn zwischendurch ein weiterer case beginnt.
Schleifen
Schleifen in Java sind ebenfalls wie in fast allenanderen Programmiersprachen, daher können wir uns auch hier kurz fassen:
Die for-Schleife wird häufig mit Arrays verwendet, hat aber den Nachteil, dass eine Zählervariable erforderlich ist.Deshalb wurde mit java 1.5 die vereinfachte for-Schleife eingeführt.
Die while - Schleife läuft solange, wie ein boolscher Wert wahr ist. Sie wird häufig mit den Sammlungsklassen verwendet. Ihr ähnlich ist die do – Schleife, wobei dort die Abfrage erst am Ende der Schleife erfolgt, sodass auf jeden Fall ein Schleifendurchlauf stattfindet.
Beak und continue
Mit break und continue lässt sich ebenfalls der Kontrollfluss steuern. Break bricht die Ausführung einer Schleife vollständig ab, währen continue den Rest des Durchlaufs ignoriert, um mit dem nächsten Wert weiterzumachen:
Try catch
Try – catch – finally Konstruktionen dienen der Fehlerbehandlung. Bitte lesen Sie dazu das Kapitel über Exceptions.