Scalaの collection.mutable.Seq
について理解できないことがある。すべての変更可能なシーケンスのインターフェイスについて説明していますが、新しいシーケンスを作成せずに要素を追加または追加するメソッドはありません。ここに明らかなものがないのですか?
Appendとprependにはそれぞれ:+
と+:
がありますが、これらは新しいコレクションを作成します—不変シーケンスの動作との一貫性を保つためです。これは問題ありませんが、ArrayBuffer
やListBuffer
のような+=
や+=:
のように、インプレースの追加や先頭に追加するための定義がないのはなぜですか?インプレース追加を実行したい場合、collection.mutable.Seq
として型指定された変更可能なシーケンスを参照できないことを意味しますか?
繰り返しますが、私は明らかなことを逃したに違いありませんが、何を見つけることができません...
シーケンスの変更可能性onlyは、(update
メソッドを介して)異なるアイテムにアイテムをスワップアウトできることを保証します。プリミティブ配列。 ではありませんシーケンスを大きくできることを保証します(それが Growable
トレイトの目的です)または小さくします( Shrinkable
)。