Continue
跳过当前循环语句的剩余部分并继续下一次循环.
Continue , LoopLabel
参数
- LoopLabel [AHK_L 59+]
- 如果省略或为 1, 此语句应用于它所在的最内层循环. 否则, 请指定语句应该应用于哪个循环; 通过标签名或嵌套层级的数值. LoopLabel 必须为常量, 不支持变量和表达式. 如果指定了标签, 则它必须直接指向循环语句.
Continue 的行为如同直接到达了循环的闭括号:
- 它让 A_Index 加 1.
- 它跳过了循环体的剩余部分.
- 检查循环条件(如果有) 判断是否满足. 如果满足, 开始新的循环; 否则循环结束.
鼓励使用 Break 和 Continue 代替 Goto 因为它们通常让脚本更容易阅读和维护.
Break, Loop, Until, While 循环, For 循环, 区块, 标签
示例
显示 5 次消息框, 为从 6 到 10 的每个数字显示一次. 注意 Loop 的前 5 次循, Continue 语句会使得循环在到达 MsgBox 行前重新开始.
Loop, 10
{
if (A_Index <= 5)
continue
MsgBox %A_Index%
}
从内嵌循环内部直接继续新的外层循环.
outer:
Loop 3
{
x := A_Index
Loop 3
{
if (x*A_Index = 4)
continue outer ; 等同于 continue 2 或 goto continue_outer.
MsgBox %x%,%A_Index%
}
continue_outer: ; 用于 goto 命令.
ErrorLevel := ErrorLevel ; 在修订号 57 之前, 标签不能指向区块的末尾.
}