主題 about_Do 簡短描述 執行一或多次陳述式清單,但受限於 While 或 Until 條件。 完整描述 Do 關鍵字可搭配 While 關鍵字或 Until 關鍵字使用而執行指令碼區塊中的陳述式,但 受限於條件。與相關的 While 迴圈不同,Do 迴圈中的指令碼區塊一定至少會執行一次。 Do-While 迴圈是一種 While 迴圈類型。在 Do-While 迴圈中,會在執行指令碼區塊 之後評估條件。與在 While 迴圈中相同,只要條件評估為 True,指令碼區塊就會重複。 與 Do-While 迴圈相同,Do-Until 迴圈一定會在條件評估之前至少執行一次。不過, 指令碼區塊只會在條件為 False 時執行。 Continue 和 Break 流程控制關鍵字可用於 Do-While 迴圈或 Do-Until 迴圈。 語法 Do-While 陳述式的語法如下: do {<陳述式清單>} while (<條件>) Do-Until 陳述式的語法如下: do {<陳述式清單>} until (<條件>) 陳述式清單包含了每次進入或重複迴圈時執行的一或多個陳述式。 陳述式的條件部分會解析成 true 或 false。 範例 下列的 Do 陳述式範例會計算陣列中的項目,直到達到值為 0 的項目: C:\PS> $x = 1,2,78,0 C:\PS> do { $count++; $a++; } while ($x[$a] -ne 0) C:\PS> $count 3 下列範例會使用 Until 關鍵字。請注意,不等於運算子 (-ne) 會由等於運算子 (-eq) 所取代。 C:\PS> $x = 1,2,78,0 C:\PS> do { $count++; $a++; } until ($x[$a] -eq 0) C:\PS> $count 3 下列範例會寫入陣列的所有值,略過小於零的任何值。 do { if ($x[$a] -lt 0) { continue } Write-Host $x[$a] } while (++$a -lt 10) 請參閱 about_While about_Operators about_Assignment_Operators about_Comparison_Operators about_Break about_Continue