Subrayado de Scala-ERROR: tipo de parámetro faltante para la función expandida
underscores (1)
Sé que ha habido bastantes preguntas sobre esto, pero he creado un ejemplo simple que pensé que debería funcionar, pero todavía no funciona y no estoy seguro de entender por qué
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))
¿Alguien puede explicar por qué la segunda declaración no compila?
Se expande a:
myStrings.foreach(println(x => x.toString))
Usted quiere:
myStrings.foreach(x => println(x.toString))
La sintaxis del marcador de posición para funciones anónimas reemplaza la expresión que contiene más pequeña posible con una función.