Partager via


À propos de l’opération

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 Until mot clé 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 prend la valeur 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 lorsque 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-Until .

Syntax

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 dont la valeur est 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é Until. 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

about_Comparison_Operators

about_Break

about_Continue