Почему я не могу переписать
println(abc.foldRight(0)((a,b) => math.max(a.length,b)))
в
object Main {
def main(args : Array[String]) {
val abc = Array[String]("a","abc","erfgg","r")
println(abc.foldRight(0)((a,b) => math.max(a.length,b)))
}
}
до
println(abc.foldRight(0)(math.max(_.length,_)))
? scala
интерпретатор дает
/path/to/Main.scala:4: error: wrong number of parameters; expected = 2
println(abc.foldRight(0)(math.max(_.length,_)))
^
one error found
Что не достаточно описательно для меня. Разве в результате лямбда принимает два параметра, один из которых вызывается для метода .length, как в abc.map(_.length)
?