Eine Schleife (DO, FOR, WHILE) wird in Java, wie in anderen Programmiersprachen aus, als Kontrollstruktur in eingesetzt. Sie wiederholt einen Anweisungs-Block (Schleifenrumpf bzw. Schleifenkörper) solange die Schleifenbedingung gültig bleibt bzw. keine Abbruchbedingung erfüllt ist. Schleifen (Englisch: loop) können beliebig verschachtelt werden.

do-Schleife

Die "nicht abweisende" do-Schleife wird mindestens einmal durchlaufen.

Einfache do-Schleife

public class Test {
  static public void main (String args[]) {
    int x=1;
    do {
      System.out.print(x);
      x++;
    } while (x<5);
  }
}

Die Schleife wird so lange durchlaufen, wie "x" kleiner 5 ist, also 4 mal. Ausgabe: "1234".

Die do-Schleife wird einmal durchlaufen.

...
    int x=1;
    do {
      System.out.print(x);
      x++;
    } while (x<1);
...

for-Schleife

Die for-Schleife (Zählschleife) empfiehlt sich, wenn man einen Zähler für Schleifendurchläufe benötigt.

Einfache for-Schleife

public class Test {
  static public void main (String args[]) {
    for (int i=0; i<5; i++) {
      System.out.println(i);   // Ausgabe: 0 1 2 3 4
    }
  }
}

for-Schleife vorzeitig per break abbrechen

...
    for (int i=0; i<5; i++) {
      if (i>2) break;
      System.out.println(i);   // Ausgabe: 0 1 2
    }
...

Performanceverbesserung durch einmalige Berechnung des Endwertes

...
    String s="test";
    for (int i=0; i<s.length(); i++) { // schlecht, da s.length() mehrfach berechnet wird
      System.out.print(s.charAt(i));
    }
    int n = s.length();
    for (int i=0; i<n; i++) {          // besser, da n=s.length() nur einmal berechnet wird
      System.out.print(s.charAt(i));
    }
...

Beispiel: Nur ungerade Zahlen ausgeben

...
    for (int i=1; i<8; i+=2) {
      System.out.println( i);   // Ausgabe: 1 3 5 7
    }
...

Beispiel: Initialisierung vor Schleifenstart

...
    int i=3;
    for (; i<5; i++) {
      System.out.println( i);   // Ausgabe: 3 4
    }
...

while-Schleife

Bei der while-Schleife wird vor Eintritt in die Schleife zuerst eine Bedingung geprüft.
Wenn diese true ist, dann wird die Schleife durchlaufen, wenn false, dann nicht.
Die while-Schleife wird so lange durchlaufen, wie die Testbedingung erfüllt ist.

Einfache while-Schleife

public class Test {
  static public void main (String args[]) {
    int x=1;
    while (x<5){
      System.out.print(x);
      x++;
    }
  }
}

Die Schleife wird so lange durchlaufen, wie "x" kleiner 5 ist, also 4 mal. Ausgabe: "1234".

Endlose while-Schleife, die per break-Anweisung verlassen wird

...
    int i=0;
    while (true) {
      i++;
      System.out.println(i); // Ausgabe: 1 2 3 4 5
      if (i==5) {
        break;
      }
    }
...