Я искал об этом, но я не мог найти, почему метод StringBuilder ensureCapacity()
не будет удлинять старую емкость, просто удвоив, но также добавив два.
Итак, когда значение по умолчанию 16 заполняется, следующее удлиненное значение будет равно 34, если длина цельной строки не превышает 34. Почему это не должно быть 32?
Мое лучшее предположение заключается в рассмотрении нулевого символа, '\ u0000', но я не уверен. Может ли кто-нибудь сказать мне, почему?