共用方式為


about_Do

主題
    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