Mit der for-Loop kann in Java eine Anweisung mehrfach hin­ter­ein­an­der aus­ge­führt werden. Sie wird vor allem dann verwendet, wenn die Ge­samt­zahl der Durch­läu­fe bereits vor der Aus­füh­rung bekannt ist. Die be­nö­tig­ten An­wei­sun­gen werden innerhalb des Schlei­fen­kör­pers platziert.

Web­hos­ting
Das beste Web­hos­ting zum Spit­zen­preis
  • 3x schneller und 60 % günstiger
  • Maximale Ver­füg­bar­keit mit > 99.99 %
  • Nur bei IONOS: Bis zu 500 GB Spei­cher­platz inklusive

Was ist die for-Schleife in Java?

Die for-Loop er­mög­licht es einer Java-Anwendung, eine Aktion so lange durch­zu­füh­ren, bis eine vorher de­fi­nier­te Bedingung erfüllt wird. Dafür wird ein Code innerhalb der bekannten ge­schweif­ten Klammern so lange wie­der­holt, bis der fest­ge­leg­te Zielwert erreicht ist.

Anders als bei anderen Schleifen, wie der Java-while-Loop oder der do-while-Loop, wird die for-Schleife in Java vor­nehm­lich dann genutzt, wenn die Anzahl der be­nö­tig­ten und gewollten Durch­läu­fe bereits im Vorfeld bekannt ist. Auch der An­fangs­punkt und die Schritt­wei­te lassen sich mit der for-Loop fest­ge­le­gen, da sie im Gegensatz zur while-Schleife über eine zu­sätz­li­che Lauf­va­ria­ble verfügt.

Aufbau von for-Loops in Java

Die Syntax einer for-Schleife in Java ist immer gleich: Ein­ge­lei­tet wird die Schleife durch das Schlüs­sel­wort „for“. Danach folgt in runden Klammern die In­itia­li­sie­rung der Lauf­va­ria­blen, dann die Ab­bruch­be­din­gung und zuletzt die Ver­än­de­rung der Lauf­va­ria­blen. Die drei Kom­po­nen­ten werden dabei jeweils durch ein Semikolon von­ein­an­der getrennt. Hinter dem letzten Ausdruck muss al­ler­dings auf das Semikolon ver­zich­tet werden.

Die aus­füh­ren­den An­wei­sun­gen folgen im Anschluss innerhalb des Schlei­fen­kör­pers, der wiederum durch ge­schweif­te Klammern ab­ge­grenzt wird. Der grund­le­gen­de Aufbau sieht also wie folgt aus:

for (Initialisierung der Laufvariablen; Abbruchbedingung; Veränderung der Laufvariablen) {
Anweisungen
}

Wie funk­tio­niert die for-Schleife von Java?

Die Funk­ti­ons­wei­se der for-Loops in Java lässt sich anhand der hin­ter­leg­ten Ausdrücke in vier grund­le­gen­de Schritte un­ter­tei­len:

  1. In­itia­li­sie­rung: Der erste Schritt der Java-for-Loop ist die In­itia­li­sie­rung. Dieser Schritt wird nur ein einziges Mal aus­ge­führt.
  2. Ab­bruch­be­din­gung: Die Ab­bruch­be­din­gung (Condition) wird im Vorfeld definiert und dann bei jedem Durchgang überprüft. Solange die Bedingung wahr (true) ist, wird die Anweisung oder eine Aktion wie­der­holt. In dem Moment, in dem die Bedingung falsch (false) ist, wird der Vorgang beendet und die for-Schleife von der Java-Anwendung ab­ge­schlos­sen.
  3. Lauf­va­ria­ble: Die Lauf- oder Zähl­va­ria­ble kann zu- oder abnehmen. Der Wert wird bei jedem Durchgang mo­di­fi­ziert und erneut auf die Ab­bruch­be­din­gung hin überprüft. Wenn diese sich als falsch erweist, wird die for-Loop verlassen und das Programm normal fort­ge­setzt. Solange die Über­prü­fung al­ler­dings wahr ist, wird das Prozedere erneut durch­ge­führt.
  4. Wie­der­ho­lung: Diese Wie­der­ho­lung ist der vierte Schritt. Jede Wie­der­ho­lung beginnt wieder bei der Ab­bruch­be­din­gung und un­ter­zieht diese einer erneuten Über­prü­fung.

Beispiel für eine for-Loop

Am ein­fachs­ten lässt sich die Funk­ti­ons­wei­se einer for-Schleife in Java mit Hilfe des passenden Quell­codes erläutern. In unserem Beispiel soll das Programm solange zählen, bis es bei dem Wert „5“ an­ge­kom­men ist. Danach soll die for-Loop ab­ge­bro­chen werden. Das sieht dann so aus:

for (int i = 1; i <= 5; i++) {
Anweisung
}

„int i = 1“ ist die In­itia­li­sie­rung. Um fest­zu­le­gen, dass die Zahl nicht größer als „5“ wird, wird die Ab­bruch­be­din­gung für die Zahl durch den Java-Operator mit „kleiner oder gleich 5“ (<=5) angegeben. An dritter Stelle legen wir fest, dass sich die Lauf­va­ria­ble mit jedem Durchgang um „1“ erhöhen soll. Der passende Befehl dazu ist „i++“.

Hinweis

Bei der Be­zeich­nung „i“ für die Variable handelt es sich um die gängige Be­zeich­nung. Sie können Ihrer Variablen al­ler­dings auch einen anderen Namen geben.

Anweisung hin­zu­fü­gen

Nun fügen Sie die ent­spre­chen­de Anweisung hinzu, damit das Programm weiß, wie es verfahren soll. Diese Anweisung wird in die ge­schweif­ten Klammern ge­schrie­ben und dann über den Java-Befehl „System.out.println“ gesteuert:

for (int i = 1; i <= 5; i++) {
System.out.println ("Der Wert der Zahl ist: " + i);
}

So arbeitet die Schleife

Kommt diese for-Schleife nun in Java zur Anwendung, passiert folgendes: Im ersten Durchlauf ist der Wert der Zahl „0“ und damit kleiner als „5“. Die Bedingung ist also erfüllt (true) und der Vorgang wird wie­der­holt. Der Wert wird um „1“ erhöht und liegt damit auch bei „1“. Die Vor­aus­set­zung, dass der Wert unter „5“ liegen muss, ist weiterhin richtig. So geht es weiter, bis der Wert von „i“ auf „6“ erhöht wird. Nun ist die Bedingung, dass der Wert kleiner oder gleich „5“ sein muss, nicht mehr erfüllt (false). Java bricht die for-Schleife daher ord­nungs­ge­mäß ab und geht weiter.

for each: Die Wei­ter­ent­wick­lung der for-Loop

Neben der normalen for-Loop bei Java gibt es die Wei­ter­ent­wick­lung for each. Für diese Schleife wird ein Array, also ein Container mit mehreren Objekten eines Datentyps benötigt. Die for-each-Schleife kann in einigen Fällen die for-Schleife in Java ersetzen. Die ent­spre­chen­de Syntax sieht so aus:

for ( Typ variable : Kollektion ) {
Code, in dem die Variable verwendet wird
}

Un­ter­schied zwischen while- und for-Loop in Java

Auch eine while-Schleife dient dazu, einen Code aus­zu­füh­ren bis eine bestimmte Bedingung erfüllt wird. Sie erhält al­ler­dings nur eine Bedingung innerhalb der runden Klammern und kann daher unter Umständen etwas un­über­sicht­li­cher als die for-Loop sein. Hier der Aufbau einer while-Schleife:

int i = 0;
while ( i <=5 ) {
System.out.println ("Der Wert der Zahl ist: " + i);
}
Hinweis

In Java gibt es insgesamt vier Schlei­fen­ar­ten. Neben der for-Schleife und den im Text ebenfalls auf­ge­führ­ten Schleifen while und for each (auch als er­wei­ter­te for-Schleife bekannt) gibt es außerdem die do-while-Loop. Diese ähnelt der while-Schleife, überprüft die de­fi­nier­te Bedingung al­ler­dings zu­sätz­lich am Ende des An­wei­sungs­blocks.

Zum Hauptmenü