Consider the code below:
private def test(some:String*){
}
private def call () {
val some = Array("asd", "zxc")
test(some)
}
It prints expect String, found Array[String]
Why? Are Scala varargs not arrays?
Note
I found several questions on Stack Overflow about Scala varargs, but all of them are about calling Java varargs methods or about converting Scala lists to arrays.
Append :_*
to the parameter in test
like this
test(some:_*)
And it should work as you expect.
If you wonder what that magical :_*
does, please refer to this question.