Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
为什么会这样:
val addOne = {a : Int => a + 1 }
但这不是:
val addOne = a: Int => a + 1
据我了解,两者都声明了一个带有一个输入参数的匿名函数。
参数列表必须放在括号中。
val addOne = (a: Int) => a + 1
有关完整语法,请参阅语言规范。
因为您定义了一个函数并将其分配给一个值。
{ a: Int => a + 1 }
是一个定义的函数。您也可以这样定义函数:
(a: Int) => a + 1
或者
(a: Int) => { a + 1 }
这是相同的。如果您不想在孔表达式周围使用括号,则只需将参数列表用括号括起来即可。