为什么会失败:
(1 to 10).flatMap(List(_+1))
使用:
error: missing parameter type for expanded function ((x$1) => x$1.$plus(1))
我必须这样做:
(1 to 10).toList.flatMap( (x: Int) => List(x+1))
为什么它不能自动检测类型:
(1 to 10).flatMap(List(_))
答案 0 :(得分:2)
它可以自动检测参数类型,只要它没有埋得太深:
(1 to 10).flatMap(x => List(x + 1))
也许它试图将函数文字(_ + 1)
视为List.apply
的参数?