Delen via


about_Do

Korte beschrijving

Hiermee wordt een of meer keren een instructielijst uitgevoerd, afhankelijk van een While of Until meer voorwaarden.

Lange beschrijving

Het Do trefwoord werkt met het While trefwoord of het Until trefwoord om de instructies in een scriptblok uit te voeren, afhankelijk van een voorwaarde. In tegenstelling tot de gerelateerde While lus wordt het scriptblok in een Do lus altijd ten minste één keer uitgevoerd.

Een Do-While-lus is een verscheidenheid aan de While lus. In een Do-While-lus wordt de voorwaarde geëvalueerd nadat het scriptblok is uitgevoerd. Net als in een While-lus wordt het scriptblok herhaald zolang de voorwaarde waar is.

Net als bij een Do-While-lus wordt een Do-Until-lus altijd minstens één keer uitgevoerd voordat de voorwaarde wordt geëvalueerd. Het scriptblok wordt echter alleen uitgevoerd terwijl de voorwaarde onwaar is.

De Continue trefwoorden en Break stroombeheer kunnen worden gebruikt in een Do-While-lus of in een Do-Until-lus .

Syntaxis

Hieronder ziet u de syntaxis van de do-while-instructie :

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

Hieronder ziet u de syntaxis van de instructie Do-Until :

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

De lijst met instructies bevat een of meer instructies die worden uitgevoerd telkens wanneer de lus wordt ingevoerd of herhaald.

Het voorwaardegedeelte van de instructie wordt omgezet in waar of onwaar. Zie about_Booleans voor meer informatie over hoe booleaanse waarden worden geëvalueerd.

Opmerking

In het volgende voorbeeld van een Do instructie worden de items in een matrix geteld totdat het een item bereikt met de waarde 0.

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

In het volgende voorbeeld wordt het Until trefwoord gebruikt. U ziet dat de operator () niet gelijk is aan de operator (-ne) wordt vervangen door de operator (-eq).

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

In het volgende voorbeeld worden alle waarden van een matrix weggeschreven, waarbij elke waarde wordt overgeslagen die kleiner is dan nul.

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

Zie ook