Ale*_*ica 12
内联值是直接使用的值,而不首先分配给中间变量.考虑这两个例子:
let number = 1
print(number)
Run Code Online (Sandbox Code Playgroud)
这里,1被分配给一个中间变量,number然后打印出来.
print(1)
Run Code Online (Sandbox Code Playgroud)
这里,1是一个内联的整数文字,直接打印.
这同样适用于闭包.
let evenNumberFilter: (Int) -> Bool = { $0 % 2 == 0 }
print((0...10).filter(evenNumberFilter))
Run Code Online (Sandbox Code Playgroud)
这里{ $0 % 2 == 0 }是一个闭包(类型(Int) -> Bool),evenNumberFilter在使用之前分配给中间变量.
print((0...10).filter{ $0 % 2 == 0 })
Run Code Online (Sandbox Code Playgroud)
在这种情况下,{ $0 % 2 == 0 }直接使用.这是一个内联关闭.
| 归档时间: |
|
| 查看次数: |
1309 次 |
| 最近记录: |