"Solo tenemos que cubrir StringBuilder, y luego creo que hemos terminado".

"Como ya sabe, StringBuilder es como la clase String, excepto que es mutable".

"Y también recuerdo que el compilador genera código que usa StringBuilder cuando simplemente agregamos cadenas".

"Sí, tienes razón. Qué memoria extraordinaria tienes. Por otra parte, todos los robots la tienen. Siempre me olvido de eso".

"Examinemos lo que puede hacer usando la clase StringBuilder :"

1) Tengo una cadena ordinaria y quiero que sea mutable. ¿Cómo puedo hacer eso?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);

2) ¿Quiero agregar un carácter a una cadena mutable existente?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.append("!");

3) ¿Y cómo hago para volver a convertir un StringBuilder en un String?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.append("!");
s = s2.toString();

4) ¿Y si necesito borrar un personaje?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.deleteCharAt(2); //Becomes "Beder"

5) ¿Cómo reemplazo parte de un String con otro?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.replace (3, 5, "_DE_"); //Becomes "Ben_DE_r"

6) ¿Qué sucede si necesito invertir una cadena?

String s = "Bender";
StringBuilder s2 = new StringBuilder(s);
s2.reverse(); //Becomes "redneB";

"Genial. Gracias, Ellie, todo tiene sentido".

"Me alegra que te guste."

"También me gustaría recordarte algo que Bilaabo debería haberte dicho".

"Hay otra clase llamada StringBuffer . Es como StringBuilder , pero sus métodos se declaran sincronizados . Esto significa que antes de cualquier llamada a uno de sus métodos, la máquina Java verifica si el objeto está ocupado; si no lo está, la JVM lo marca. como ocupado. Después de salir del método, el objeto se libera. Como resultado, estas llamadas son más lentas. No debe usar StringBuffer a menos que sea necesario".

"Pero si necesita una cadena mutable que se usará en varios subprocesos, entonces no encontrará nada mejor que StringBuffer ".

"Gracias por la información. Creo que podría ser útil algún día".