A(严格地)`可成长'可变`Seq`

时间:2016-02-08 20:51:51

标签: scala-collections

我需要一个(可变的)Seq Growable。我不需要更新任何索引或缩小集合或transform它(或任何其他形式的变异),只需增长它(+=),我想积极保护集合免受其他突变。

  • Buffer的问题在于,它们不仅仅是Growable,还有Shrinkable,可以是transformed
  • (可变。)Seq不是Shrinkable但它可以转换,而不是 Growable

对于我(粗略)对scala集合的理解,没有具体的实现具有我正在寻找的确切特征,所以我相信我必须实现自己的特性?

编辑:

我试过了 val hands : collection.Seq[Team] with Growable[Team] = mutable.Seq[Team]() 为了使名义类型符合我的要求,主动阻止客户在hands上调用不需要的变异方法,但它表示类型不符合。

1 个答案:

答案 0 :(得分:0)

我认为你正在寻找这个

  val hands : collection.Seq[Team] with Growable[Team] = mutable.Buffer[Team]()