我是Scala新手,正在使用ReScala阅读一些示例代码。在这段代码中,作者似乎使用了两种样式来定义lambdas:
-
{ x => println(x) }
-
(x => { println(x) })
我假设这两种风格在语义上是等价的。然而,我认为第二种风格允许在lambda主体中轻松添加额外的语句。
正确吗?哪种方式更"地道"?{}
是否打开一个新的词法作用域(像C中一样)也很有趣。
我认为这两种风格在语义上是等价的。
是的
然而,我认为第二种风格允许在lambda主体中轻松添加额外的语句。
。或者,更确切地说,是的,但第一种样式也是如此。
哪一种方式更"地道"?
这是基于意见的。众说纷纭。
{}
是否打开一个新的词法作用域(如在C中)也将是有趣的。