小编Phi*_*aek的帖子

Java StringBuilder(StringBuffer)的ensureCapacity():为什么它加倍并递增2?

我已经搜索了这个,但是我找不到为什么StringBuilder的ensureCapacity()方法不会通过加倍来延长旧容量,而是添加两个.

因此,当默认容量16已满时,下一个加长值将为34,除非整个字符串长度不超过34.为什么不应该是32?

我最好的猜测是考虑一个空字符'\ u0000',但我不确定.谁能告诉我为什么?

java stringbuilder stringbuffer capacity

26
推荐指数
1
解决办法
838
查看次数

标签 统计

capacity ×1

java ×1

stringbuffer ×1

stringbuilder ×1