From d9d2952e85494313b1f0f398303d14a9a692c346 Mon Sep 17 00:00:00 2001 From: Sunset Wan Date: Tue, 22 Jun 2021 07:54:23 +0800 Subject: [PATCH] =?UTF-8?q?feat=EF=BC=9A=E3=80=8C=E5=8F=82=E6=95=B0?= =?UTF-8?q?=E5=90=8D=E7=A7=B0=E7=BC=A9=E5=86=99=20=E3=80=8D=E8=8A=82?= =?UTF-8?q?=E7=AC=AC=E4=BA=8C=E6=AE=B5=E5=92=8C=E7=AC=AC=E4=B8=89=E6=AE=B5?= =?UTF-8?q?=E6=9C=89=E6=9B=B4=E6=96=B0=20(#1142)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/02_language_guide/07_Closures.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/02_language_guide/07_Closures.md b/source/02_language_guide/07_Closures.md index dfbcee0e..5cc2c54b 100755 --- a/source/02_language_guide/07_Closures.md +++ b/source/02_language_guide/07_Closures.md @@ -113,13 +113,13 @@ reversedNames = names.sorted(by: { s1, s2 in s1 > s2 } ) Swift 自动为内联闭包提供了参数名称缩写功能,你可以直接通过 `$0`,`$1`,`$2` 来顺序调用闭包的参数,以此类推。 -如果你在闭包表达式中使用参数名称缩写,你可以在闭包定义中省略参数列表,并且对应参数名称缩写的类型会通过函数类型进行推断。`in` 关键字也同样可以被省略,因为此时闭包表达式完全由闭包函数体构成: +如果你在闭包表达式中使用参数名称缩写,你可以在闭包定义中省略参数列表,并且对应参数名称缩写的类型会通过函数类型进行推断。闭包接受的参数的数量取决于所使用的缩写参数的最大编号。`in` 关键字也同样可以被省略,因为此时闭包表达式完全由闭包函数体构成: ```swift reversedNames = names.sorted(by: { $0 > $1 } ) ``` -在这个例子中,`$0` 和 `$1` 表示闭包中第一个和第二个 `String` 类型的参数。 +在这个例子中,`$0` 和 `$1` 表示闭包中第一个和第二个 `String` 类型的参数。因为 `$1` 是编号最大的缩写参数,所以可以理解为:该闭包需要两个参数。这里的 `sorted(by:)` 函数希望得到一个参数都是字符串的闭包,因此缩写参数 `$0` 和 `$1` 的类型均为 `String`。 ### 运算符方法 {#operator-methods}