Why can not I rewrite
println(abc.foldRight(0)((a,b) => math.max(a.length,b)))
at
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)))
}
}
to
println(abc.foldRight(0)(math.max(_.length,_)))
? scalatranslator gives
/path/to/Main.scala:4: error: wrong number of parameters; expected = 2
println(abc.foldRight(0)(math.max(_.length,_)))
^
one error found
Which is not enough for me. It doesn’t work. Lambda accepts two parameters, one of which is called for the .length method, as in abc.map(_.length)?
source
share