Dela via


about_Do

Kort beskrivning

Kör en instruktionslista en eller flera gånger, med villkoret While eller Until .

Lång beskrivning

Nyckelordet Do fungerar med nyckelordet While eller nyckelordet Until för att köra -instruktionerna i ett skriptblock, med förbehåll för ett villkor. Till skillnad från den relaterade While loopen körs skriptblocket i en Do loop alltid minst en gång.

En Do-While-loop är en mängd olika loopar While . I en Do-While-loop utvärderas villkoret när skriptblocket har körts. Precis som i en While-loop upprepas skriptblocket så länge villkoret utvärderas till sant.

Precis som en Do-While-loop körs alltid en Do-Until-loop minst en gång innan villkoret utvärderas. Skriptblocket körs dock bara när villkoret är falskt.

Nyckelorden Continue och Break flödeskontroll kan användas i en Do-While-loop eller i en Do-Until-loop .

Syntax

Följande visar syntaxen för Do-While-instruktionen :

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

Följande visar syntaxen för Do-Until-instruktionen :

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

Instruktionslistan innehåller en eller flera -instruktioner som körs varje gång loopen anges eller upprepas.

Villkorsdelen av -instruktionen omvandlas till sant eller falskt. Mer information om hur booleska värden utvärderas finns i about_Booleans.

Exempel

I följande exempel på en Do -instruktion räknas objekten i en matris tills den når ett objekt med värdet 0.

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

I följande exempel används nyckelordet Until . Observera att operatorn inte är lika med (-ne) ersätts med operatorn lika med (-eq).

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

I följande exempel skrivs alla värden för en matris och alla värden som är mindre än noll hoppas över.

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

Se även