0Pricing
Kotlin Academy · Lektion

while und do-while: Wann welche Schleife verwendet wird

Schreiben Sie while- und do-while-Schleifen und verstehen Sie ihre Einsatzgebiete.

while und do-while: Wann welche Schleife verwendet wird ist eine kostenlose Kotlin Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Kotlin Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Kotlin Academy-Kurs umfasst insgesamt 4 Lektionen.

Zwei Arten von While-Schleifen

Kotlin bietet sowohl while (Prüfung vor der Schleife) als auch do-while (Prüfung nach der Schleife). Der Unterschied: do-while führt den Schleifenrumpf immer mindestens einmal aus.

Grundlegende while-Schleife

Eine while-Schleife prüft die Bedingung vor jeder Iteration. Ist sie bereits zu Beginn falsch, wird der Schleifenrumpf nie ausgeführt.

fun main() {
    var count = 0
    while (count < 3) {
        println("count = $count")
        count++
    }
}

Grundlegende do-while-Schleife

Eine do-while-Schleife führt den Schleifenrumpf aus und prüft anschließend die Bedingung. Der Schleifenrumpf wird immer mindestens einmal ausgeführt.

fun main() {
    var n = 10
    do {
        println("n = $n")
        n--
    } while (n > 7)
}

Bis zu einem Sentinel-Wert lesen

while-Schleifen sind ideal, wenn Sie nicht wissen, wie viele Iterationen benötigt werden — zum Beispiel beim Lesen bis zu einem Sentinel-Wert.

fun main() {
    val data = listOf(3, 7, 0, 9)
    var i = 0
    while (i < data.size && data[i] != 0) {
        println("got ${data[i]}")
        i++
    }
    println("stopped at index $i")
}

Eine Liste durchsuchen

Verwenden Sie while für eine Suche mit vorzeitigem Abbruch, bei der Sie stoppen, sobald eine Bedingung erfüllt ist.

fun main() {
    val nums = listOf(2, 4, 7, 8, 10)
    var i = 0
    while (i < nums.size && nums[i] % 2 == 0) i++
    println("first odd at index $i = ${nums[i]}") // 2 = 7
}

do-while für die Eingabevalidierung

Verwenden Sie do-while, wenn Sie eine Aktion (Aufforderung, Lesen, Versuch) ausführen müssen, bevor Sie den Erfolg prüfen können.

fun main() {
    val validInputs = listOf("y", "n", "y")
    var idx = 0
    var input: String
    do {
        input = validInputs[idx++]
        println("user typed: $input")
    } while (input != "n" && idx < validInputs.size)
}

Zähler mit Dekrementierung

while-Schleifen eignen sich gut für Zähler, die bis auf null heruntergezählt werden.

fun main() {
    var lives = 3
    while (lives > 0) {
        println("Lives left: $lives")
        lives--
    }
    println("Game over")
}

Endlosschleife mit Break

Verwenden Sie while (true) mit break für Code im Stil einer Ereignisschleife, bei dem die Abbruchbedingung komplex ist.

fun main() {
    val items = listOf(1, 2, 3, -1, 4)
    var i = 0
    while (true) {
        if (i >= items.size || items[i] < 0) break
        println("ok: ${items[i]}")
        i++
    }
}

while und for im Vergleich

Wenn Sie die Anzahl der Iterationen im Voraus kennen, bevorzugen Sie for. Verwenden Sie while, wenn die Iterationen vom Laufzeitstatus abhängen.

fun main() {
    // for: known bounds
    for (i in 1..3) print("$i ")
    println()
    // while: state-driven
    var n = 1
    while (n <= 3) { print("$n "); n++ }
    println()
}

Schleife mit zwei Variablen

while-Schleifen können mehrere Variablen verfolgen, was bei Algorithmen wie Fibonacci hilfreich ist.

fun main() {
    var a = 0
    var b = 1
    while (b < 50) {
        print("$b ")
        val next = a + b
        a = b
        b = next
    }
    println() // 1 1 2 3 5 8 13 21 34
}

do-while wird immer einmal ausgeführt

Selbst wenn die Bedingung von Anfang an falsch ist, wird der Schleifenrumpf von do-while einmal ausgeführt. Manchmal ist genau das gewünscht — in anderen Fällen handelt es sich um einen Fehler.

fun main() {
    var x = 100
    do {
        println("x = $x") // prints once
        x--
    } while (x > 1000) // false immediately
}

Kurztest

Welche Schleife garantiert, dass ihr Schleifenrumpf unabhängig von der Bedingung mindestens einmal ausgeführt wird?

Zusammenfassung

Verwenden Sie while, wenn die Anzahl der Iterationen von einer Laufzeitbedingung abhängt. Verwenden Sie do-while, wenn der Schleifenrumpf mindestens einmal ausgeführt werden muss (z. B. bei Validierung oder Wiederholungsversuchen). Bevorzugen Sie for, wenn die Anzahl der Iterationen bekannt ist.

Häufig gestellte Fragen

Ist die Lektion „while und do-while: Wann welche Schleife verwendet wird“ kostenlos?

Ja — der vollständige Text von „while und do-while: Wann welche Schleife verwendet wird“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Kotlin Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Kotlin Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „while und do-while: Wann welche Schleife verwendet wird“?

Schreiben Sie while- und do-while-Schleifen und verstehen Sie ihre Einsatzgebiete. Du übst Kotlin Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Kotlin Academy zu starten?

Keine Vorkenntnisse erforderlich. Kotlin Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „while und do-while: Wann welche Schleife verwendet wird“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Kotlin Academy-Lektion Code schreiben und ausführen?

Ja. Jede Kotlin Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. for-Schleifen über Bereiche und Collections
  2. while und do-while: Wann welche Schleife verwendet wird
  3. forEach, repeat und forEachIndexed
  4. break, continue und benannte Rückgaben
← Zurück zu Kotlin Academy