由于搜索:+不会产生任何结果(感谢谷歌!)我找不到任何问题的答案:
为什么:
a :+ b
导致
List[Any]
如果'a'和'b'都是
类型List[Int]
自己尝试一下,以下不会编译(Scala 2.11.6,Idea14):
object AAA extends App {
val a: List[Int] = List[Int]()
val b: List[Int] = List[Int]()
val x: List[Int] = a :+ b
}
事先提前
答案 0 :(得分:6)
:+
将单个元素附加到List
。因此,您要将List[Int]
附加到List[Int]
,从而产生类似的内容(如果a
和b
都设置为List(1, 2)
):
List(1, 2, List(1, 2))
Scala计算元素类型(Int
)与您追加的内容(List[Int]
)之间最常见的类型,即Any
。
您可能想要连接两个列表:
val x: List[Int] = a ++ b