我注意到它StringBuilder
由一个数组备份,这使得它分配了一个内存块。我不喜欢这种行为,因为内存高度碎片化,有时很难找到足够大的内存块,这会触发 GC ......
我想知道是否有一个StringBuilder
由链表备份的版本,它对内存更友好。
我注意到它StringBuilder
由一个数组备份,这使得它分配了一个内存块。我不喜欢这种行为,因为内存高度碎片化,有时很难找到足够大的内存块,这会触发 GC ......
我想知道是否有一个StringBuilder
由链表备份的版本,它对内存更友好。
首先,我会严重质疑是否需要替代方案:对于大多数用例,实现StringBuilder
是完全明智的,并且工作得很好。在你决定之前测量。
如果您确实需要如此庞大的类似对象以至于这成为一个问题,那么像Ropes for Java这样的东西可能会有所帮助:它实际上是一个包含许多不同CharacterSequence
实现(具有公共接口Rope
)的库,针对不同的交互进行了优化。