Siempre que trato de sumar los números en la cadena como:tema de la velocidad, mientras que concatenar cadenas
String s=new String();
for(int j=0;j<=1000000;j++)
s+=String.valueOf(j);
Mi programa es la adición de los números, pero muy lentamente. Pero cuando alteré mi programa y lo hice como:
StringBuffer sb=new StringBuffer();
for(int j=0;j<=1000000;j++)
sb.append(String.valueOf(j));
Obtuve el resultado muy rápidamente. ¿Por qué es así?
http://www.joelonsoftware.com/ artículos/fog0000000319.html – moonshadow
Le sugiero que lea Java efectivo http://www.amazon.com/Effective-Java-2nd-Joshua-Bloch/dp/0321356683 Este libro cubrirá el conocimiento básico de la programación de Java. Si usted tiene más preguntas, todavía se puede volver aquí, por supuesto – nanda
Se va a llegar más rápido aún si previamente el tamaño del StringBuffer: 'StringBuffer sb = new StringBuffer (5.888.896);' Entonces podría obtener * ligeramente * más rápido de nuevo si cambia a 'StringBuilder'. Por cierto, solo puede usar 'sb.append (j);' para anexar el número. –