我需要一个(可变的)Seq
仅 Growable
。我不需要更新任何索引或缩小集合或transform
它(或任何其他形式的变异),只需增长它(+=
),我想积极保护集合免受其他突变。
Buffer
的问题在于,它们不仅仅是Growable
,还有Shrinkable
,可以是transformed
。 Seq
不是Shrinkable
但它可以转换,而不是 Growable
对于我(粗略)对scala集合的理解,没有具体的实现具有我正在寻找的确切特征,所以我相信我必须实现自己的特性?
编辑:
我试过了
val hands : collection.Seq[Team] with Growable[Team] = mutable.Seq[Team]()
为了使名义类型符合我的要求,主动阻止客户在hands
上调用不需要的变异方法,但它表示类型不符合。
答案 0 :(得分:0)
我认为你正在寻找这个
val hands : collection.Seq[Team] with Growable[Team] = mutable.Buffer[Team]()