Die while-Schleife führt wiederholt Anweisungen nach Prüfung einer Bedingung aus.

Die while-Schleife dient dazu, eine oder mehrere Anweisungen so lange auszuführen, wie eine Bedingung wahr (true) ist.

Der Kopf einer while-Schleife besteht aus dem Schlüsselwort while gefolgt von einer in runden Klammern notierten boolschen Abbruchbedingung. Der darauf folgende in geschweiften Klammern notierte Schleifenkörper enthält eine beliebige Anzahl an Anweisungen, die wiederholt nacheinander so lange ausgeführt werden, bis die im Kopf notierte Abbruchbedingung false liefert.

Wird in einer for-Schleife zur Definition der Abbruchbedingung üblicherweise eine Zählvariable verwendet, so kann eine while-Schleife auch ohne diese notiert werden.
Wird jedoch eine Zählvariable verwendet, so muss diese im Gegensatz zur for-Schleife vor der Schleifendeklaration erzeugt und initialisiert werden. Ihr Inkrementieren oder Dekrementieren geschieht dann üblicherweise während oder nach Ausführung der innerhalb des Schleifenkörpers notierten Anweisungen.

Da die Abbruchbedingung im Schleifenkopf notiert wird und somit vor Ausführung des ersten Schleifendurchlaufs überprüft wird, spricht man von einer kopfgesteuerten Schleife. Dies bewirkt, dass die in der Schleife notierten Anweisungen nur ausgeführt werden, wenn die Abbruchbedingung bei Erreichen der Schleife true ergibt. Ist dies nicht der Fall, so wird die komplette Schleife übersprungen.
Das 'Gegenmodell', die fußgesteuerte Schleife, ist die do-while-Schleife, bei der die Anweisungen mindestens ein Mal ausgeführt werden.

public class WhileClass {
    
    public void gibAus(){
        int i=0;
        while(i<10){
            System.out.println(i);
            i++;
        }
    }
    
    public static void main(String[] args){
        WhileClass wc = new WhileClass();
        wc.gibAus();
    }
}

Häufige Fehler

Bei Unachtsamkeit können sich bei Nutzung der while-Schleife leicht Fehler einschleichen: Fehlt die Abbruchbedingung, wird diese niemals false oder fehlt die Änderung der Zählvariablen, entsteht möglicherweise eine Endlosschleife, die das Programm zum Absturz bringen oder 'einfrieren' kann.

Einige typische Fehler:

letzte Änderung an:
Break und continue


Javabeginners News-Feed News-Feed abonnieren