about_Do

Description courte

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

Description longue

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

Une boucle Do-While est une variété de la While boucle. 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 Continue mot clé de contrôle de flux peuvent être utilisés dans une boucle Do-While ou dans une boucle Do-Until.Break

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. Pour plus d’informations sur la façon dont les valeurs booléennes sont évaluées, consultez about_Booleans.

Exemple

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

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

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

PS> $x = 1,2,78,0
PS> do { $count++; $a++; } until ($x[$a] -eq 0)
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