0Pricing
Kotlin Academy · Leçon

while et do-while : quand utiliser chacune

Écrivez des boucles while et do-while et comprenez leurs cas d’utilisation.

while et do-while : quand utiliser chacune est une leçon Kotlin Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Kotlin Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Kotlin Academy comprend 4 leçons au total.

Deux types de boucles while

Kotlin propose while (test préalable) et do-while (test ultérieur). La différence : do-while exécute toujours le corps au moins une fois.

Boucle while de base

Une boucle while vérifie la condition avant chaque itération. Si elle est fausse dès le départ, le corps n’est jamais exécuté.

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

Boucle do-while de base

Une boucle do-while exécute le corps, puis vérifie la condition. Le corps est toujours exécuté au moins une fois.

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

Lire jusqu’à une valeur sentinelle

Les boucles while sont idéales lorsque vous ne connaissez pas le nombre d’itérations nécessaire, par exemple pour lire jusqu’à une valeur sentinelle.

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")
}

Rechercher dans une liste

Utilisez while pour effectuer une recherche avec sortie anticipée et vous arrêter dès qu’une condition est satisfaite.

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 pour valider une entrée

Utilisez do-while lorsque vous devez effectuer une action (demander, lire ou tenter quelque chose) avant de pouvoir vérifier la réussite.

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)
}

Compteur avec décrémentation

Les boucles while permettent de gérer proprement les compteurs qui décrémentent jusqu’à zéro.

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

Boucle infinie avec break

Utilisez while (true) avec break pour le code de type boucle d’événements lorsque la condition de sortie est complexe.

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++
    }
}

Comparer while et for

Si vous connaissez à l’avance le nombre d’itérations, préférez for. Utilisez while lorsque les itérations dépendent de l’état à l’exécution.

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()
}

Boucle avec deux variables

Les boucles while peuvent suivre plusieurs variables, ce qui est utile pour des algorithmes comme celui de Fibonacci.

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 s’exécute toujours une fois

Même si la condition est fausse dès le départ, le corps de do-while est exécuté une fois. C’est parfois exactement le comportement souhaité, mais cela peut aussi être une erreur.

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

Vérification rapide

Quelle boucle garantit que son corps sera exécuté au moins une fois, quelle que soit la condition ?

Récapitulatif

Utilisez while lorsque le nombre d’itérations dépend d’une condition à l’exécution. Utilisez do-while lorsque le corps doit être exécuté au moins une fois, par exemple pour une validation ou une nouvelle tentative. Préférez for si le nombre d’itérations est connu.

Questions Fréquemment Posées

La leçon « while et do-while : quand utiliser chacune » est-elle gratuite ?

Oui — le texte complet de « while et do-while : quand utiliser chacune » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Kotlin Academy, passe à CoddyKit PRO. Le cours Kotlin Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « while et do-while : quand utiliser chacune » ?

Écrivez des boucles while et do-while et comprenez leurs cas d’utilisation. Tu pratiques Kotlin Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Kotlin Academy ?

Aucune expérience préalable n'est requise. Kotlin Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.

Combien de temps prend la leçon « while et do-while : quand utiliser chacune » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Kotlin Academy ?

Oui. Chaque leçon Kotlin Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Boucle for sur des intervalles et des collections
  2. while et do-while : quand utiliser chacune
  3. forEach, repeat et forEachIndexed
  4. break, continue et retours étiquetés
← Retour à Kotlin Academy