Warum sollte die StringBuffer
eine Grenze für ihre Größe haben?Max Größe für StringBuffer
Ich ging durch einige der Links: http://www.coderanch.com/t/540346/java/java/maximum-size-hold-String-buffer.
Ist das wegen der Count-Member-Variable, die ein Int ist?
Angenommen, wir haben 2^31-1 Zeichen in StringBuffer
und wir fügen diesem Zeichen weitere Zeichen hinzu StringBuffer
. Die Elementvariable count wird um die Anzahl der angehängten Zeichen erhöht, und wenn die Variable Count bereits ihren Maximalwert erreicht (2^31-1), wird sie auf einen negativen Wert zurückgesetzt.
Warum würde es einen Fehler werfen?
Sie einen String nicht verwenden, wenn Sie einen Stringbuilder verwenden können (es hat die gleiche Grenze though) –
A 2^32-1 StringBuilder würde 4 GB benötigen. Möchtest du eine so lange Zeichenfolge erstellen? –