假设以下代码编译(people
is a List[Person]
):
people.map(_.address).foreach(println)
为什么会出现以下情况:
people.foreach(println(_.address))
产生讯息
missing parameter type for expanded function ((x$4) => x$4.address)
每当通配符嵌套在方法调用中时,似乎都是这种情况。
这是因为编译器试图将代码扩展为?:
people.foreach(println(x => x.address))