Continue

跳过当前循环语句的剩余部分并继续下一次循环.

Continue LoopLabel

参数

LoopLabel
LoopLabel 标识了该语句应该应用于哪个循环; 这是通过标签名或嵌套层级的数值来实现的. 如果省略或为 1, 此语句应用于它所在的最内层循环. 如果指定了标签, 则它必须直接指向循环语句.

LoopLabel 必须为常量, 不支持变量和表达式, 但括号中的单个原义数字或用圆括号括起来的字符串除外, 例如: continue("outer").

备注

Continue 的行为如同直接到达了循环的闭括号:

  1. 它让 A_Index 加 1.
  2. 它跳过了循环体的剩余部分.
  3. 检查循环条件(如果有) 判断是否满足. 如果满足, 开始新的循环; 否则循环结束.

鼓励使用 Break 和 Continue 代替 Goto 因为它们通常让脚本更容易阅读和维护.

Break, Loop, Until, While-loop, For-loop, 区块, 标签

示例

显示 5 次消息框, 为从 6 到 10 的每个数字显示一次. 注意 Loop 的前 5 次循, Continue 语句会使得循环在到达 MsgBox 行前重新开始.

Loop 10
{
    if (A_Index <= 5)
        continue
    MsgBox A_Index
}

从内嵌循环内部直接继续新的外层(outer) 循环.

outer:
Loop 3
{
    x := A_Index
    Loop 3
    {
        if (x*A_Index = 4)
            continue outer  ; 等同于 continue 2goto continue_outer.
        MsgBox x "," A_Index
    }
    continue_outer: ; 用于 goto 命令.
}
unixetc