Diagramm einer for-Schleife

Die Sprache Java bietet umfangreiche Möglichkeiten. Darunter sind natürlich auch verschiedene Kontrollstrukturen, wie die for()-Schleife. Um genau die geht es in diesem Artikel. Etwas Grundwissen rund um die Software Entwicklung wird vorausgesetzt. Wem das noch fehlt, sei unser Kurs Programmieren lernen mit Java ans Herz gelegt.

Aufbau einer Java for()-Schleife

Die for()-Schleife in Java ist stark an die C-Syntax angelehnt. Viele Entwickler finden sich daher schnell zurecht, denn neben Java lehnen auch andere Sprachen ihre Syntax an die von C/C++ an. Hier zunächst einmal der generelle Aufbau:

Charakteristisch ist der dreiteilige Schleifenkopf. Alle Felder werden durch ein Semikolon getrennt. Im ersten Teil der for-Schleife wird der Schleifenzähler (meist i, j, k usw) definiert. Im zweiten Bereich findet sich die Bedingung. Im dritten Bereich wird ein Ausdruck hinterlegt, der den Schleifenzähler nach jedem Durchlauf inkrementiert bzw. dekrementiert.

Funktion des Schleifenzählers

Der Schleifenzähler, also die entsprechende Variable, wird i, j, k, usw genannt. Das gilt nicht nur für die Java for()-Schleife, sondern generell. Das ist allgemeine Konvention und gilt als guter Stil. Jeder Entwickler weiß dann sofort, was gemeint ist. Die grundlegende Idee bei dieser Hilfsvariable ist, dass er vom gegebenen Startwert bis hin zum letzten Durchlauf immer weiter inkrementiert bzw. dekrementiert wird. So kannst Du die Ausführungen zählen oder den Zähler auch als Index beim Zugriff auf Array-Elemente verwenden.

Die Bedingung

Die Bedingung der Schleife muss zwingend erfüllt sein, damit ein Durchlauf erfolgt. Ansonsten wird die Schleife zur Laufzeit nicht ausgeführt.

Im Beispiel oben wird eine fiktives Array mit dem Namen „farben“ durchlaufen. Bei der Bedingung greifen wir auf das Feld „length“ zu, welches die Anzahl der Array-Elemente zur Laufzeit enthält. Für den Zugriff auf Arrays allgemein gilt, dass der Index von Element n immer n-1 ist. Weniger abstrakt ausgedrückt: Der Zugriff auf das dritte Element erfolgt über den Index 2, auf das vierte Element über den Index 3 und so weiter. Dementsprechend startet der Zähler bei 0, da das erste Element den Index 0 hat.

Daraus resultiert auch, dass bei der Bedingung der Schleifenzähler kleiner als die Anzahl der Elemente sein muss. Wir starten bei 0 mit dem ersten Durchlauf. Wenn sich 10 Elemente im Array befinden, ist der letzte gültige Index 9. Die Bedingung muss also sicherstellen, dass „i“ kleiner als 10 ist.

Inkrementieren/Dekrementieren

Nach jedem Durchlauf for()-Schleife führt Java den dritten Ausdruck aus. Hier wird dafür gesorgt, dass der Schleifenzähler gemäß unseren Vorgaben verändert wird. Im Beispiel oben muss nach jeder Ausführung der Wert um 1 erhöht werden. Genau dies erledigt der Inkrement-Operator für uns.

Es sind allerdings auch andere Konstellationen denkbar! Du kannst zum Beispiel auch den Startwert von „i“ auf die Anzahl der Elemente abzgl. 1 setzen (da n-1 beim Zugriff gilt). Die Bedingung würde dann einfach sicherstellen, dass „i“ nicht kleiner als 0 wird. Statt den Schleifenzähler zu erhöhen, muss er dann herunterzählen:

Ausführung des Schleifenkörpers

Der Schleifenkörper ist der Code-Block, der wiederholt werden soll. Er wird durch geschwungene Klammern umschlossen. Solange die Bedingung im 2. Feld wahr ist, wird die Logik auch wiederholt. Ähnlich wie bei der while()-Schleife muss jedoch die Bedingung unbedingt wahr sein. Sonst wird gar nichts ausgeführt. Klingt selbstverständlich? Mit der do/while-Schleife gibt es auch eine Schleife, auf die das nicht zutrifft.

Mehrere for()-Schleifen verschachteln

In Java und anderen Sprachen kannst Du Schleifen verschachteln. Anders ausgedrückt: Du kannst eine Schleife innerhalb einer Schleife definieren. Theoretisch kannst Du auch eine Schleife definieren, in der eine Schleife in einer Schleife verschachtelt ist. Gut, lassen wir das. Hier ein Beispiel:

Zum einen Interessant: allgemein beginnt man mit dem Schleifenzähler bei „i“. In der verschachtelten Schleife nutzt man dann „j“, usw. Bei jedem Aufruf der äußeren Schleife (insgesamt 6) wird die innere Schleife ausgeführt (jeweils 10 Mal). Die eigentliche Ausgabe erfolgt nun in der inneren Schleife. Die innere Schleife gibt einfach „x“ aus. Am Ende der äußeren Schleife geben wir noch einen Zeilenumbruch aus, sodass jede Zeile für sich alleine steht. Die Schleife erzeugt folgende Ausgabe:

Schreib einen Kommentar

Your email address will not be published.