我在 Scala 中有一个方法,它有固定数量的参数,我无法更改其签名:
def myMethod(a1: Int, a2: Int, a3: Int): Int = { /* stuff happens */ }
我还有一个数组 arr
,其元素数量与 myMethod
中的参数完全相同。如果 myMethod
是可变参数方法,我可以使用奇怪的 : _*
符号将数组作为参数传递。我想做类似的事情
myMethod(/*some Scala magic with arr*/)
有没有一种方法可以在 Scala 中优雅地做到这一点,而不需要 myMethod
是可变参数?
最佳答案
我认为您最接近的是在调用您的方法之前的一个步骤中解构您的数组:
val Array(a1, a2, a3) = arr
myMethod(a1, a2, a3)
关于scala - 在 Scala 非可变参数方法中将 Seq 作为参数传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36444614/