about_Do
簡短描述
執行語句清單一或多次,受限於 While
或 Until
條件。
完整描述
關鍵詞 Do
適用於 While
關鍵詞或 Until
關鍵詞,以在腳本區塊中執行語句,受限於條件。 不同於相關的 While
迴圈,迴圈中的 Do
腳本區塊一律會至少執行一次。
Do-While 循環是各種While
迴圈。 在 Do-While 迴圈中,會在腳本區塊執行之後評估條件。 如同 While 迴圈,只要條件評估為 true,腳本區塊就會重複。
如同 Do-While 迴圈, Do-Until 迴圈一律會在評估條件之前至少執行一次。 不過,腳本區塊只會在條件為 false 時執行。
和流程控制關鍵字可用於 Do-While 循環或 Do-Until 迴圈。Break
Continue
Syntax
以下顯示 Do-While 語句的語法:
do {<statement list>} while (<condition>)
以下顯示 Do-Until 語句的語法:
do {<statement list>} until (<condition>)
語句清單包含每次輸入或重複迴圈時執行的一或多個語句。
語句的條件部分會解析為 true 或 false。 如需如何評估布爾值的詳細資訊,請參閱 about_Booleans。
範例
下列語句範例 Do
會計算數位中的專案,直到到達值為 0 的項目為止。
PS> $x = 1,2,78,0
PS> do { $count++; $a++; } while ($x[$a] -ne 0)
PS> $count
3
下列範例使用 Until
關鍵詞。 請注意,不等於運算符 (-ne
) 會取代為等於運算子 (-eq
) 。
PS> $x = 1,2,78,0
PS> do { $count++; $a++; } until ($x[$a] -eq 0)
PS> $count
3
下列範例會寫入陣列的所有值,略過小於零的任何值。
do {
if ($x[$a] -lt 0) { continue }
Write-Host $x[$a]
}
while (++$a -lt 10)