@@ -106,7 +106,7 @@ for index in 1...5 {
106
106
```
107
107
-->
108
108
109
- 例子中用来进行遍历的元素是使用闭区间操作符(` ... ` )表示的从 ` 1 ` 到 ` 5 ` 的数字区间。index 被赋值为闭区间中的第一个数字(` 1 ` ),然后循环中的语句被执行一次。在本例中,这个循环只包含一个语句,用来输出当前 ` index ` 值所对应的乘 5 乘法表的结果。该语句执行后,` index ` 的值被更新为闭区间中的第二个数字(` 2 ` ),之后 ` print(_:separator:terminator:) ` 函数会再执行一次。整个过程会进行到闭区间结尾为止。
109
+ 例子中用来进行遍历的元素是使用闭区间操作符(` ... ` )表示的从 ` 1 ` 到 ` 5 ` 的数字区间。` index ` 被赋值为闭区间中的第一个数字(` 1 ` ),然后循环中的语句被执行一次。在本例中,这个循环只包含一个语句,用来输出当前 ` index ` 值所对应的乘 5 乘法表的结果。该语句执行后,` index ` 的值被更新为闭区间中的第二个数字(` 2 ` ),之后 ` print(_:separator:terminator:) ` 函数会再执行一次。整个过程会进行到闭区间结尾为止。
110
110
111
111
上面的例子中,` index ` 是一个每次循环遍历开始时被自动赋值的常量。这种情况下,` index ` 在使用前不需要声明,只需要将它包含在循环的声明中,就可以对其进行隐式声明,而无需使用 ` let ` 关键字声明。
112
112
@@ -215,7 +215,7 @@ for tickMark in stride(from: 3, through: hours, by: hourInterval) {
215
215
```
216
216
-->
217
217
218
- 以上示例使用 ` for ` -` in ` 循环来遍历范围、数组、字典和字符串。你可以用它来遍历任何的集合,包括实现了 [ ` Sequence ` ] ( https://developer.apple.com/documentation/swift/sequence ) 协议的自定义类或集合类型。
218
+ 以上示例使用 ` for ` -` in ` 循环来遍历范围、数组、字典和字符串。你可以用它来遍历任何的集合,包括实现了 [ ` Sequence ` ] ( https://developer.apple.com/documentation/swift/sequence ) 协议的自定义类或集合类型。
219
219
220
220
<!--
221
221
TODO: for (index, object) in enumerate(collection)
@@ -224,10 +224,10 @@ for tickMark in stride(from: 3, through: hours, by: hourInterval) {
224
224
225
225
## While 循环
226
226
227
- ` while ` 循环会一直运行一段语句直到条件变成 ` false ` 。这类循环适合使用在第一次迭代前,迭代次数未知的情况下 。Swift 提供两种 ` while ` 循环形式:
227
+ ` while ` 循环会一直运行一段语句直到条件变成 ` false ` 。这类循环最适合在迭代次数在第一次迭代开始前无法确定的情况下使用 。Swift 提供两种 ` while ` 循环形式:
228
228
229
229
- ` while ` 循环,每次在循环开始时计算条件是否符合;
230
- - ` repeat ` -` while ` 循环,每次在循环结束时计算条件是否符合 。
230
+ - ` repeat ` -` while ` 循环,每次在循环结束时评估条件是否符合 。
231
231
232
232
### While
233
233
@@ -678,7 +678,7 @@ let weatherAdvice = if temperatureInCelsius > 100 {
678
678
679
679
在此示例中,` if ` 表达式检查温度是否高于水的沸点--- 100° C。高于沸点的温度会导致 ` if ` 表达式抛出 ` .boiling ` 错误,而不是返回文本摘要。即使这个 ` if ` 表达式可能会抛出错误,您也不要在它之前使用 ` try ` 。有关处理错误的信息,请参阅 < doc:ErrorHandling > 。
680
680
681
- 除了在赋值的右侧使用 if 表达式(如上面的示例所示)之外,您还可以将它们用作函数或闭包的返回值。
681
+ 除了在赋值的右侧使用 ` if ` 表达式(如上面的示例所示)之外,您还可以将它们用作函数或闭包的返回值。
682
682
683
683
### Switch
684
684
@@ -700,7 +700,7 @@ default:
700
700
701
701
` switch ` 语句由多个 * case* 构成,每个由 ` case ` 关键字开始。为了匹配某些更特定的值,Swift 提供了几种方法来进行更复杂的模式匹配,这些模式将在本节的稍后部分提到。
702
702
703
- 与 ` if ` 语句类似,每一个 ` case ` 都是代码执行的一条分支。` switch ` 语句会决定哪一条分支应该被执行,这个流程被称作根据给定的值切换 * (switching)* 。
703
+ 与 ` if ` 语句类似,每一个 ` case ` 都是代码执行的一条分支。` switch ` 语句会决定哪一条分支应该被执行,这个流程被称作根据给定的值 * 切换 (switching)* 。
704
704
705
705
` switch ` 语句必须是* 完备的* 。这就是说,每一个可能的值都必须至少有一个 ` case ` 分支与之对应。在某些不可能涵盖所有值的情况下,你可以使用默认 ` default ` 分支来涵盖其它所有没有对应的值,这个默认分支必须在 ` switch ` 语句的最后面。
706
706
@@ -760,7 +760,7 @@ print(message)
760
760
761
761
与 ` if ` 表达式一样,您可以抛出错误或调用类似 ` fatalError(_:file:line:) ` 的函数从而不提供值,而不是为给定的 ` case ` 提供值。如上例所示,您可以在赋值的右侧使用 ` switch ` 表达式,也可以用作函数或闭包的返回值。
762
762
763
- #### 不存在隐式的贯穿
763
+ #### 没有隐式贯穿
764
764
765
765
与 C 和 Objective-C 中的 ` switch ` 语句不同,在 Swift 中,当匹配的 ` case ` 分支中的代码执行完毕后,程序会终止 ` switch ` 语句,而不会继续执行下一个 ` case ` 分支。这也就是说,不需要在 ` case ` 分支中显式地使用 ` break ` 语句。这使得 ` switch ` 语句更安全、更易用,也避免了漏写 ` break ` 语句导致多个 ` case ` 被执行的错误。
766
766
@@ -1710,7 +1710,7 @@ if #unavailable(iOS 10) {
1710
1710
```
1711
1711
-->
1712
1712
1713
- 若可用性检查只提供了回滚代码,改用用 `#unavailable ` 能提升程序整体的可读性。
1713
+ 若可用性检查只提供了回滚代码,改用 `#unavailable ` 能提升程序整体的可读性。
1714
1714
1715
1715
<!--
1716
1716
FIXME
0 commit comments