Partager via


À propos de Do

DESCRIPTION COURTE

Exécute une liste d’instructions une ou plusieurs fois, sous réserve d’une condition While ou Until.

DESCRIPTION DÉTAILLÉE

Le mot-clé Do fonctionne avec le mot-clé While ou le mot-clé Until pour exécuter les instructions dans un bloc de script, sous réserve d’une condition. Contrairement à la boucle While associée, le bloc de script d’une boucle Do s’exécute toujours au moins une fois.

Une boucle Do-While est une variété de la boucle While. Dans une boucle Do-While , la condition est évaluée après l’exécution du bloc de script. Comme dans une boucle While, le bloc de script est répété tant que la condition est évaluée à true.

Comme une boucle Do-While , une boucle Do-Until s’exécute toujours au moins une fois avant l’évaluation de la condition. Toutefois, le bloc de script s’exécute uniquement pendant que la condition est false.

Les mots-clés de contrôle de flux Continue et Break peuvent être utilisés dans une boucle Do-While ou dans une boucle Do-Til.

Syntaxe

Voici la syntaxe de l’instruction Do-While :

do {<statement list>} while (<condition>)

Voici la syntaxe de l’instruction Do-Until :

do {<statement list>} until (<condition>)

La liste d’instructions contient une ou plusieurs instructions qui s’exécutent chaque fois que la boucle est entrée ou répétée.

La partie condition de l’instruction est résolue en true ou false.

Exemple :

L’exemple suivant d’une instruction Do compte les éléments d’un tableau jusqu’à ce qu’il atteigne un élément avec la valeur 0.

C:\PS> $x = 1,2,78,0
C:\PS> do { $count++; $a++; } while ($x[$a] -ne 0)
C:\PS> $count
3

L’exemple suivant utilise le mot-clé Jusqu’à. Notez que l’opérateur non égal à (-ne) est remplacé par l’opérateur égal à (-eq).

C:\PS> $x = 1,2,78,0
C:\PS> do { $count++; $a++; } until ($x[$a] -eq 0)
C:\PS> $count
3

L’exemple suivant écrit toutes les valeurs d’un tableau, en ignorant toute valeur inférieure à zéro.

do {
  if ($x[$a] -lt 0) { continue }
  Write-Host $x[$a]
}
while (++$a -lt 10)

VOIR AUSSI

about_While

about_Operators

about_Assignment_Operators

à_propos_des_opérateurs_de_comparaison

about_Break

about_Continue