我知道对此有很多问题,但是我创建了一个我认为应该有效的简单示例,但仍然没有解决,并且不确定我为什么
val myStrings = new Array[String](3)
// do some string initialization
// this works
myStrings.foreach(println(_))
// ERROR: missing parameter type for expanded function
myStrings.foreach(println(_.toString))
有人可以解释为什么第二条语句不能编译吗?
最佳答案
它扩展为:
myStrings.foreach(println(x => x.toString))
你要:
myStrings.foreach(x => println(x.toString))
匿名函数的占位符语法用函数替换了可能的最小包含表达式。
关于scala - Scala下划线-错误:扩展功能缺少参数类型,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7627117/