我注意到,如果我定义这个简单的函数,我会得到相同的效果:
fun double ( i: Int ) = i*2
Run Code Online (Sandbox Code Playgroud)
如果我定义一个变量并为其分配一个lambda(具有相同的主体):
var double = { i : Int -> i*2 }
Run Code Online (Sandbox Code Playgroud)
如果我double(a)使用任何一个声明调用,我会得到相同的结果.这让我感到困惑.何时需要,推荐,有利的是将变量定义为lambda而不是定义函数?