4

StringBuilder配列によってバックアップされていることに気付きました。これにより、単一のメモリ ブロックが割り当てられます。メモリが非常に断片化されており、GC をトリガーする十分な大きさのメモリ ブロックを見つけるのが難しい場合があるため、私はその動作が好きではありません...

StringBuilderリンクされたリストによってバックアップされた、よりメモリに優しいバージョンがあるのではないかと思います。

4

1 に答える 1

3

まず第一に、代替案の必要性について真剣に疑問を呈します。ほとんどのユースケースでは、 の実装StringBuilderは完全に賢明であり、問​​題なく機能します。決める前に測定してください。

これが問題になるほど巨大なサイズの同様のオブジェクトが実際に必要な場合は、Ropes for Java のようなものが役立つかもしれません。これは事実上、さまざまな相互作用に最適化された多くの異なるCharacterSequence実装 (共通のインターフェイスを持つ)のライブラリです。Rope

于 2012-10-03T11:56:05.670 に答える