Che*_*rry 62 arrays scala variadic-functions
请考虑以下代码:
private def test(some:String*){
}
private def call () {
val some = Array("asd", "zxc")
test(some)
}
Run Code Online (Sandbox Code Playgroud)
它打印expect String, found Array[String]为什么?Scala varargs不是数组吗?
注意
我在Stack Overflow上发现了几个关于Scala varargs的问题,但所有这些问题都是关于调用Java varargs方法或将Scala列表转换为数组.
Yuh*_*ang 103
像这样附加:_*到参数test
test(some:_*)
Run Code Online (Sandbox Code Playgroud)
它应该像你期望的那样工作.
如果你想知道那个神奇的东西:_*,请参考这个问题.
Her*_*lme 37
很简单:
def test(some:String*){}
def call () {
val some = Array("asd", "zxc")
test(some: _*)
}
Run Code Online (Sandbox Code Playgroud)