for initialization; condition; increment { statements }
和 C 语言中一样,分号将循环的定义分为 3 个部分,不同的是,Swift 不需要使用圆括号将“initialization; condition; increment”包括起来。
这个循环执行流程如下:
- 循环首次启动时,初始化表达式(initialization expression)被调用一次,用来初始化循环所需的所有常量和变量。
- 条件表达式(condition expression)被调用,如果表达式调用结果为
false
,循环结束,继续执行for
循环关闭大括号 (}
)之后的代码。如果表达式调用结果为true
,则会执行大括号内部的代码(statements)。 - 执行所有语句(statements)之后,执行递增表达式(increment expression)。通常会增加或减少计数器的值,或者根据语句(statements)输出来修改某一个初始化的变量。当递增表达式运行完成后,重复执行第 2 步,条件表达式会再次执行。
上述描述和循环格式等同于:
initialization while condition { statements increment }