首页 文章

如何附加或前置Scala mutable.Seq

提问于
浏览
49

有人了解Scala的collection.mutable.Seq . 它描述了所有可变序列的接口,但是我没有看到在不创建新序列的情况下附加或前置元素的方法 . 我错过了一些明显的东西吗?

分别有 :++: 用于追加和前置,但是它们创建了新的集合 - 为了与不可变序列的行为一致,我假设 . 这很好,但为什么没有类似 +=+=: 的方法,如 ArrayBufferListBuffer define,用于就地追加和前置?这是否意味着我不能引用一个类似 collection.mutable.Seq 的可变seq,如果我想进行就地追加?

再一次,我一定错过了一些明显的东西,却找不到什么......

1 回答

  • 77

    序列的可变性仅保证您能够将项目替换为不同的项目(通过 update 方法),就像您可以使用例如原始数组 . 它不能保证Growable的特性是Growable或更小(Shrinkable) .

    Buffer是包含 GrowableShrinkable 的抽象特征,而不是Seq .

相关问题