是否可以获取所有函数参数并将其传递给另一个函数?
def function funA(arg1: String, arg2: String, arg3: Int): Any = {
....
funB(arg1, arg2, arg3)
}
Run Code Online (Sandbox Code Playgroud)
相反,funB(arg1, arg2, arg3)我想写这样的东西funB(parentFun.args)
有可能吗?也许我应该反思一下?
我假设如果执行两次以上,则应创建case类以提高可读性,您可以
def funA(arg:(String,String,Int)): Any = {
(funB _).tupled(arg)
}
//and call it
funA("a","b",1)
Run Code Online (Sandbox Code Playgroud)
如果您要使用arg1,,arg2中的arg3名称funA,则可以
def funA(arg:(String,String,Int)): Any = {
val (arg1,arg2,arg3) = arg
println(arg1) //arg1 is arg._1
(funB _).tupled(arg)
}
Run Code Online (Sandbox Code Playgroud)