Strings en Java: métodos, comparación y StringBuilder
Manipular texto en Java: los métodos más usados, por qué usar .equals() y no ==, la inmutabilidad y StringBuilder. Todo probable al momento.
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.
Explorador de métodos de String
Escribe un texto y prueba los métodos más habituales. El resultado se calcula igual que lo haría Java.
== frente a .equals()
== compara si son el mismo objeto en memoria. .equals()
compara el contenido. Para texto, casi siempre quieres .equals().
Inmutabilidad
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 y 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
}
""";
Comprueba lo aprendido
"ProgramandoWeb".substring(2, 6) obtienes…String s = "hola"; s.toUpperCase(); — ¿qué vale s?