Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Rövid leírás
Egy vagy több utasításlistát futtat, while vagy until feltételnek megfelelően.
Hosszú leírás
A do kulcsszó a while kulcsszóval vagy a until kulcsszóval együttműködve futtatja a parancsokat egy utasításblokkban, egy feltételnek megfelelően. A kapcsolódó while hurokkal ellentétben do a hurok utasításblokkja mindig legalább egyszer fut.
A do/while hurkok a ciklusok széles skáláját használják while .
do/while Egy ciklusban a feltétel kiértékelése az utasításblokk futtatása után történik. A ciklushoz while hasonlóan az utasításblokk mindaddig ismétlődik, amíg a feltétel értéke igaz.
A ciklushoz do/while hasonlóan a do/until ciklusok mindig legalább egyszer futnak a feltétel kiértékelése előtt. Az utasításblokk azonban csak akkor fut, ha a feltétel hamis.
Az continue és break a folyamatvezérlési kulcsszavak hurkokban do/while vagy hurkokban do/until is használhatók.
Szintaxis
Az alábbi ábra az utasítás szintaxisát do/while mutatja be:
do {<statement list>} while (<condition>)
Az alábbi ábra az utasítás szintaxisát do/until mutatja be:
do {<statement list>} until (<condition>)
Az utasításlista egy vagy több utasítást tartalmaz, amelyek minden alkalommal futnak, amikor a ciklus be van írva vagy ismétlődik.
Az utasítás feltételrésze igaz vagy hamis lesz. A logikai értékek kiértékelésének módjáról további információt a about_Booleanscímű témakörben talál.
Példa
Az alábbi példa egy do utasítás számlálja meg a tömb elemeit, amíg el nem éri a 0 értékű elemet.
PS> $x = 1,2,78,0
PS> do { $count++; $a++; } while ($x[$a] -ne 0)
PS> $count
3
Az alábbi példa a until kulcsszót használja. Figyelje meg, hogy a nem egyenlő operátor (-ne) helyébe az egyenlő operátor (-eq) lép.
PS> $x = 1,2,78,0
PS> do { $count++; $a++; } until ($x[$a] -eq 0)
PS> $count
3
Az alábbi példa egy tömb összes értékét írja le, kihagyva a nullánál kisebb értékeket.
do {
if ($x[$a] -lt 0) { continue }
Write-Host $x[$a]
}
while (++$a -lt 10)