Freigeben über


about_Do

Kurze Beschreibung

Führt eine Anweisungsliste ein oder mehrere Male aus, unterliegt einer oder Until einer While Bedingung.

Lange Beschreibung

Das Do Schlüsselwort funktioniert mit dem While Schlüsselwort oder dem Until Schlüsselwort, um die Anweisungen in einem Skriptblock auszuführen, vorbehaltlich einer Bedingung. Im Gegensatz zur zugehörigen While Schleife wird der Skriptblock in einer Do Schleife immer mindestens einmal ausgeführt.

Eine Do-While-Schleife ist eine Vielzahl von Schleifen While . In einer Do-While-Schleife wird die Bedingung ausgewertet, nachdem der Skriptblock ausgeführt wurde. Wie in einer While-Schleife wird der Skriptblock wiederholt, solange die Bedingung als wahr ausgewertet wird.

Wie eine Do-While-Schleife wird eine Do-Until-Schleife immer mindestens einmal ausgeführt, bevor die Bedingung ausgewertet wird. Der Skriptblock wird jedoch nur ausgeführt, wenn die Bedingung falsch ist.

Die Schlüsselwörter für die Continue Break Ablaufsteuerung können in einer Do-While-Schleife oder in einer Do-Until-Schleife verwendet werden.

Syntax

Im Folgenden wird die Syntax der Do-While-Anweisung veranschaulicht:

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

Im Folgenden wird die Syntax der Do-Until-Anweisung veranschaulicht:

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

Die Anweisungsliste enthält eine oder mehrere Anweisungen, die bei jeder Eingabe oder wiederholten Schleife ausgeführt werden.

Der Bedingungsbereich der Anweisung wird in "true" oder "false" aufgelöst. Weitere Informationen dazu, wie Booleane ausgewertet werden, finden Sie unter about_Booleans.

Beispiel

Im folgenden Beispiel einer Do Anweisung werden die Elemente in einem Array zählt, bis es ein Element mit dem Wert 0 erreicht.

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

Im folgenden Beispiel wird das Until Schlüsselwort verwendet. Beachten Sie, dass der ungleiche Operator (-ne) durch den gleichen Operator (-eq) ersetzt wird.

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

Im folgenden Beispiel werden alle Werte eines Arrays geschrieben, wobei alle Werte, die kleiner als Null sind, übersprungen werden.

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

Siehe auch