【发布时间】:2012-11-24 22:43:26
【问题描述】:
是否可以从 Scala 中的可迭代对象中传递函数参数?
val arguments= List(1,2)
def mysum(a:Int,b:Int)={a+b}
如何使用列表内容作为参数调用 mysum?
【问题讨论】:
-
Syntax sugar: _*的可能重复
是否可以从 Scala 中的可迭代对象中传递函数参数?
val arguments= List(1,2)
def mysum(a:Int,b:Int)={a+b}
如何使用列表内容作为参数调用 mysum?
【问题讨论】:
要让它在列表上工作,您需要将 mysum 函数适应“varargs”:
scala> def mysum ( args : Int* ) = args.sum
mysum: (args: Int*)Int
scala> val arguments = List(1,2)
arguments: List[Int] = List(1, 2)
scala> mysum(arguments: _*)
res0: Int = 3
【讨论】: