Strings in Java: methods, comparison and StringBuilder

Working with text in Java: the most-used methods, why to use .equals() and not ==, immutability and StringBuilder. All testable right away.

Un String es una secuencia de caracteres. En Java es un objeto (no un tipo primitivo) y es inmutable: una vez creado, su contenido no cambia. Los métodos que «modifican» en realidad devuelven un String nuevo.

String method explorer

Escribe un texto y prueba los métodos más habituales. El resultado se calcula igual que lo haría Java.

== vs .equals()

== compara si son el mismo objeto en memoria. .equals() compara el contenido. Para texto, casi siempre quieres .equals().

Immutability

Los métodos de String no cambian el original: devuelven uno nuevo. Si no guardas el resultado, se pierde.

StringBuilder

Concatenar con + dentro de un bucle crea un String nuevo en cada vuelta (lento). StringBuilder usa un buffer que se modifica: mucho más eficiente para construir texto poco a poco.

StringBuilder sb = new StringBuilder();
for (int i = 1; i <= 5; i++) {
    sb.append(i).append("-");
}
String resultado = sb.toString();   // "1-2-3-4-5-"

String.format and printf

Componen texto con «huecos»: %d entero, %s texto, %.2f decimal con 2 cifras, %n salto de línea.

Text blocks (Java 15+)

Texto multilínea entre """ sin escapar comillas ni concatenar. Perfecto para JSON, HTML o SQL.

String json = """
    {
      "nombre": "Ana",
      "edad": 30
    }
    """;

Check what you've learned