scala> class A (s: String*) { val l: ListBuffer[String] = ListBuffer[String](s) }
<console>:8: error: type mismatch;
found : String*
required: String
class A(s: String*) {val l: ListBuffer[String] = ListBuffer[String](s)}
为什么不能将参数传递s
给 ListBuffer[String] 的 apply 方法,它是
def apply[A](elems: A*): CC[A] = { ... }
(方法apply
来自GenericCompanion.scala
)
该代码ListBuffer[String]("foo", "bar")
确实有效。但似乎我无法通过s
其中 is also的字符串的参数列表String*
。