我试图快速理解闭包,但缺少一些基本的东西。
给出以下示例:
var numbers = [20, 19, 7, 12]
numbers.map({(number: Int) -> Int in return 3 * number})
numbers.map {(number: Int) -> Int in return 3 * number}
numbers.sorted {(n1:Int, n2:Int) -> Bool in return n1 < n2}
Run Code Online (Sandbox Code Playgroud)
为什么额外的大括号适用于地图但没有排序?IE
numbers.sorted({(n1:Int, n2:Int) -> Bool in return n1 < n2})
Run Code Online (Sandbox Code Playgroud)
不会编译...
"error: argument passed to call that takes no arguments"
Run Code Online (Sandbox Code Playgroud)
请问有人能解释一下区别吗?谢谢。