如果a有一个val x = List(2,3,5,8)
,而我想将元素4附加到列表中,则x::a
或a::x
会按预期工作。但是,这种表示法有替代方法吗?
答案 0 :(得分:3)
如果我正确理解了您的问题,我们将:
val x = List(2,3,5,8)
val a = 4
,并且您希望将a
附加(不可变)到x
。
a::x
可以使用,但是将返回带有4
前缀的列表,因此不是您所要求的。 x::a
根本无法使用,因为,您不能真正将列表放在前缀整数之前。
例如,您可以使用:+
方法:
x :+ a // Returns List(2, 3, 5, 8, 4)
但是请注意,追加到List
上需要线性时间,因此根据您的特定应用程序可能不是一个好主意。如果此操作的性能很重要,请考虑使用其他数据结构。更多信息here。