¿Por qué el StringBuffer
tiene un límite en su tamaño?Tamaño máximo para StringBuffer
Revisé algunos de los enlaces: http://www.coderanch.com/t/540346/java/java/maximum-size-hold-String-buffer.
¿Eso se debe a la variable de miembro de conteo, que es un int?
Supongamos que tenemos 2^31-1 caracteres en StringBuffer
y que agregamos algunos caracteres más a ese StringBuffer
. La variable miembro del conteo se incrementará por el número de caracteres agregados y si la variable conteo ya está en su máximo (2^31-1), se revertiría a algún valor negativo.
¿Por qué arrojaría un error?
No utilice un StringBuffer cuando se puede utilizar un StringBuilder (tiene el mismo límite, aunque) –
A 2^32-1 StringBuilder tomaría 4 GB. ¿Te gusta crear una cadena tan larga? –