这有效:(1 to 5).reduceLeft( _+_ )
但这不是:(x:Int,y:Int)=>_+_
<console>:8: error: missing parameter type for expanded function ((x$1, x$2) => x$1.$plus(x$2))
(x:Int,y:Int)=>_+_
^
<console>:8: error: missing parameter type for expanded function ((x$1: <error>, x$2) => x$1.$plus(x$2))
(x:Int,y:Int)=>_+_
^
这是不一致的,因为在第一种情况下,匿名函数 ( _+_
) 编译成功,但在第二种情况下失败。
有什么我错过或误解的吗?还是只是语法定义?