Skip to content

Commit 4fc3aca

Browse files
committed
Merge pull request SwiftGGTeam#386 from 100mango/patch-2
完成修订 sort函数 小节
2 parents 20a1d37 + 9e6fb79 commit 4fc3aca

File tree

1 file changed

+5
-5
lines changed

1 file changed

+5
-5
lines changed

source/chapter2/07_Closures.md

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,26 +50,26 @@ Swift 的闭包表达式拥有简洁的风格,并鼓励在常见场景中进
5050
Swift 标准库提供了名为`sort`的函数,会根据您提供的用于排序的闭包函数将已知类型数组中的值进行排序。
5151
一旦排序完成,`sort(_:)`方法会返回一个与原数组大小相同,包含同类型元素且元素已正确排序的新数组。原数组不会被`sort(_:)`方法修改。
5252

53-
下面的闭包表达式示例使用`sorted`函数对一个`String`类型的数组进行字母逆序排序,以下是初始数组值:
53+
下面的闭包表达式示例使用`sort(_:)`方法对一个String类型的数组进行字母逆序排序,以下是初始数组值:
5454

5555
```swift
5656
let names = ["Chris", "Alex", "Ewa", "Barry", "Daniella"]
5757
```
5858

59-
`sorted`函数需要传入两个参数
59+
`sort(_:)`方法需要传入两个参数
6060

6161
* 已知类型的数组
62-
* 闭包函数,该闭包函数需要传入与数组类型相同的两个值,并返回一个布尔类型值来告诉`sorted`函数当排序结束后传入的第一个参数排在第二个参数前面还是后面。如果第一个参数值出现在第二个参数值前面,排序闭包函数需要返回`true`,反之返回`false`
62+
* 闭包函数,该闭包函数需要传入与数组元素类型相同的两个值,并返回一个布尔类型值来表明当排序结束后传入的第一个参数排在第二个参数前面还是后面。如果第一个参数值出现在第二个参数值前面,排序闭包函数需要返回`true`,反之返回`false`
6363

6464
该例子对一个`String`类型的数组进行排序,因此排序闭包函数类型需为`(String, String) -> Bool`
6565

66-
提供排序闭包函数的一种方式是撰写一个符合其类型要求的普通函数,并将其作为`sort`函数的第二个参数传入
66+
提供排序闭包函数的一种方式是撰写一个符合其类型要求的普通函数,并将其作为`ssort(_:)`方法的参数传入
6767

6868
```swift
6969
func backwards(s1: String, s2: String) -> Bool {
7070
return s1 > s2
7171
}
72-
var reversed = sorted(names, backwards)
72+
var reversed = names.sort(backwards)
7373
// reversed 为 ["Ewa", "Daniella", "Chris", "Barry", "Alex"]
7474
```
7575

0 commit comments

Comments
 (0)