关于 Do
简短说明
运行语句列表一次或多次,受 While 或 Until 条件约束。
详细说明
Do 关键字 (keyword) 与 While 关键字 (keyword) 或 Until 关键字 (keyword) 一起使用,以在脚本块中运行语句,但受条件限制。 与相关的 While 循环不同,Do 循环中的脚本块始终至少运行一次。
Do-While 循环是各种 While 循环。 在 Do-While 循环中,在脚本块运行后评估条件。 与 While 循环中一样,只要条件的计算结果为 true,脚本块就重复执行。
与 Do-While 循环一样, Do-Until 循环始终在计算条件之前至少运行一次。 但是,脚本块仅在条件为 false 时运行。
Continue 和 Break 流控制关键字可以在 Do-While 循环或 Do-Until 循环中使用。
语法
下面显示了 Do-While 语句的语法:
do {<statement list>} while (<condition>)
下面显示了 Do-Until 语句的语法:
do {<statement list>} until (<condition>)
语句列表包含每次进入或重复循环时运行的一个或多个语句。
语句的条件部分解析为 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 关键字 (keyword) 。 请注意,不等于运算符 (-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)