about_Do

简短说明

运行语句列表一次或多次,并受某个 WhileUntil 条件的约束。

长说明

Do关键字与关键字或Until关键字一起使用While,以在脚本块中运行语句,并受条件约束。 与相关 While 循环不同,循环中的 Do 脚本块始终至少运行一次。

Do-While 循环是各种While循环。 在 Do-While 循环中,在脚本块运行后评估条件。 与 While 循环中一样,只要条件的计算结果为 true,脚本块将重复。

Do-While 循环一样, Do-Until 循环在评估条件之前始终至少运行一次。 但是,脚本块仅在条件为 false 时运行。

流控制关键字可用于 Do-While 循环或 Do-Until 循环。BreakContinue

语法

下面显示了 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)

另请参阅