Groovy,做什么 - >意思

use*_*325 14 groovy

在groovy代码的示例中,我发现->操作符无处不在,但是groovy教程和我似乎都提供了关于这意味着什么的书.

Jac*_*ack 27

它用于将您为闭包声明绑定的位置与实际代码分开,例如:

def myClosure = { x, y -> x + y }
Run Code Online (Sandbox Code Playgroud)

该部分之前->宣布的关闭有一个名为两个参数xy,而第二部分是封闭的代码.

您可以在只有一个参数的闭包中省略它,在这种情况下it假定变量:

[1, 2, 3, 4].each{ println it*2 }
Run Code Online (Sandbox Code Playgroud)

但你也可以这样做

[1, 2, 3, 4].each{ lol -> println lol*2 }
Run Code Online (Sandbox Code Playgroud)