我写了一个方法,它接受 Seq[String] 的所有子类的对象。不幸的是,它不接受 Array[String] 类型的对象。Array[String] 不是 Seq[String] 的子类吗?
scala> def test[T <: Seq[String]](x: T) = {}
test: [T <: Seq[String]](x: T)Unit
scala> val data = "This is a test string"
data: java.lang.String = This is a test string
scala> test(data.split(" "))
<console>:10: error: inferred type arguments [Array[java.lang.String]] do not conform to method test's type parameter bounds [T <: Seq[String]]
test(data.split(" "))