校正+翻译 From SketchK

主要内容
6 `闭包`章节中`单表达式闭包隐式返回`一节内容翻译有误(原文与当前翻译中的内容不相符)
7 `闭包`章节中`运算符函数`一节内容翻译有误(原文与当前翻译中的内容不相符)
This commit is contained in:
Sketchk
2016-05-12 20:53:27 +08:00
parent 4976c25347
commit 019cb42f13

View File

@ -137,7 +137,7 @@ reversed = names.sort( { s1, s2 in return s1 > s2 } )
reversed = names.sort( { s1, s2 in s1 > s2 } )
```
在这个例子中,`sort(_:)`方法的第二个参数函数类型明确了闭包必须返回一个`Bool`类型值。因为闭包函数体只包含了一个单一表达式(`s1 > s2`),该表达式返回`Bool`类型值,因此这里没有歧义,`return`关键字可以省略。
在这个例子中,`sort(_:)`方法的数类型明确了闭包必须返回一个`Bool`类型值。因为闭包函数体只包含了一个单一表达式(`s1 > s2`),该表达式返回`Bool`类型值,因此这里没有歧义,`return`关键字可以省略。
<a name="shorthand_argument_names"></a>
### 参数名称缩写Shorthand Argument Names
@ -155,7 +155,7 @@ reversed = names.sort( { $0 > $1 } )
<a name="operator_functions"></a>
### 运算符函数Operator Functions
实际上还有一种更简短的方式来撰写上面例子中的闭包表达式。Swift 的`String`类型定义了关于大于号(`>`)的字符串实现,其作为一个函数接受两个`String`类型的参数并返回`Bool`类型的值。而这正好与`sort(_:)`方法的第二个参数需要的函数类型相符合。因此您可以简单地传递一个大于号Swift 可以自动推断出您想使用大于号的字符串函数实现:
实际上还有一种更简短的方式来撰写上面例子中的闭包表达式。Swift 的`String`类型定义了关于大于号(`>`)的字符串实现,其作为一个函数接受两个`String`类型的参数并返回`Bool`类型的值。而这正好与`sort(_:)`方法的参数需要的函数类型相符合。因此您可以简单地传递一个大于号Swift 可以自动推断出您想使用大于号的字符串函数实现:
```swift
reversed = names.sort(>)