我是一个scala新手。斯卡拉匿名函数 - 不像我预期的那样行为
我想明白为什么,因为我希望它
def invokeFunc(myFunc:() => String){
println(myFunc())
}
def callInvoker(){
invokeFunc({ return "this is a string" })
}
当我调用“callInvoker”我什么也没得到这个代码不行为。我期待打印“这是一个字符串”,但没有任何回报。为什么?
你有意离开了“=”函数签名后面? – peri4n 2013-02-28 10:46:29
你能解释一下这个问题吗? – 2013-02-28 10:47:13
def functionName(arg:Arg):ReturnType = {Body}是函数的标准定义。你忽略了'=',它告诉编译器你的函数正在返回Unit(在Java世界中是void)。 – peri4n 2013-02-28 10:49:00