我想知道下面的代码如何工作并显示输出“ hello hi”
def greetSomeone(prefix:String) = (name:String) => println(prefix + " " + name)
val helloSomeone = greetSomeone("Hello")
helloSomeone("hi ")
答案 0 :(得分:2)
这是高阶函数的示例。参见docs.scala-lang.org
greetSomeone
是一种返回带有一个参数的函数的方法。
使用helloSomeone("hi ")
调用此函数。
您还可以将greetSomeone
和currying
一起写(请参阅docs.scala-lang.org):
def greetSomeone(prefix:String)(name:String) = println(prefix + " " + name)
让我知道是否需要更多说明。