Kontrollstrukturen bestimmen den Ablauf eines Programms. Es gibt drei Grundstrukturen (siehe Phasenmodell).
Anweisungen werden der Reihe nach ausgeführt.
// Fläche eines Rechtecks berechnen
int breite = 5;
int hoehe = 3;
int flaeche = breite * hoehe;
// Note ausgeben
if (punkte >= 90) {
System.out.println("Sehr gut");
} else if (punkte >= 75) {
System.out.println("Gut");
} else {
System.out.println("Nicht bestanden");
}
// Wochentag ausgeben
switch (tag) {
case 1:
System.out.println("Montag");
break;
case 2:
System.out.println("Dienstag");
break;
default:
System.out.println("Anderer Tag");
break;
}
switch eignet sich, wenn eine Variable gegen mehrere feste Werte geprüft wird. if-else ist flexibler und erlaubt beliebige Bedingungen.
Die Bedingung wird vor jedem Durchlauf geprüft. Ist sie von Anfang an falsch, wird der Block nie ausgeführt.
// Zahlen 1 bis 5 ausgeben
int i = 1;
while (i <= 5) {
System.out.println(i);
i++;
}
Die Bedingung wird nach jedem Durchlauf geprüft. Der Block wird mindestens einmal ausgeführt.
// Eingabe wiederholen bis gültig
int eingabe;
do {
eingabe = scanner.nextInt();
} while (eingabe < 0);
for ist eine kompakte Kurzform für eine kopfgesteuerte Schleife mit Zähler.
// Summe von 1 bis 10 berechnen
int summe = 0;
for (int i = 1; i <= 10; i++) {
summe += i;
}
Äquivalent als while:
int summe = 0;
int i = 1;
while (i <= 10) {
summe += i;
i++;
}