Java Strings
En Java, las cadenas son objetos que representan secuencias de caracteres. La clase String
forma parte del paquete java.lang
y proporciona una serie de métodos para manipular y trabajar con cadenas de forma eficaz. Las cadenas en Java son inmutables, lo que significa que una vez creado un objeto String
, su valor no puede modificarse.
Crear cadenas
Las cadenas pueden crearse en Java utilizando literales de cadena o instanciando la clase String
.
Uso de literales de cadena
String literal = "Hello, World!";
Utilizando la String
Clase
String object = new String("Hello, World!");
Métodos comunes de cadena
Java proporciona un sólido conjunto de métodos para realizar diversas operaciones con cadenas. He aquí algunos métodos utilizados habitualmente:
Ejemplo 1: Longitud de una cadena
public class StringLengthExample {
public static void main(String[] args) {
String text = "Hello, World!";
int length = text.length();
System.out.println("Length of the string: " + length);
}
}
El método length()
devuelve el número de caracteres de la cadena.
Ejemplo 2: Concatenación de cadenas
public class StringConcatExample {
public static void main(String[] args) {
String firstName = "John";
String lastName = "Doe";
String fullName = firstName + " " + lastName;
System.out.println("Full Name: " + fullName);
}
}
Las cadenas pueden concatenarse utilizando el operador +
o el método concat()
.
Ejemplo 3: Extracción de subcadenas
public class SubstringExample {
public static void main(String[] args) {
String text = "Hello, World!";
String sub = text.substring(7, 12);
System.out.println("Substring: " + sub);
}
}
El método substring(int beginIndex, int endIndex)
extrae una parte de la cadena de beginIndex
a endIndex - 1
.
Ejemplo 4: Encontrar un carácter en una cadena
public class IndexOfExample {
public static void main(String[] args) {
String text = "Hello, World!";
int index = text.indexOf('W');
System.out.println("Index of 'W': " + index);
}
}
El método indexOf()
devuelve el índice de la primera aparición del carácter o cadena especificados.
Consejos y buenas prácticas
- Inmutabilidad: Recuerda que las cadenas son inmutables. Cualquier modificación provoca la creación de un nuevo objeto
String
. - StringBuilder/StringBuffer: Utiliza
StringBuilder
oStringBuffer
para las cadenas mutables cuando realices numerosas modificaciones, para evitar crear varios objetos.StringBuilder builder = new StringBuilder("Hello"); builder.append(", World!"); System.out.println(builder.toString());
- Piscina de Cuerdas: Java mantiene un pool de cadenas para optimizar el uso de la memoria. Utiliza literales de cadena para aprovechar esta función.
- Comprobación de igualdad: Utiliza
equals()
para comparar valores de cadena en lugar de==
, que comprueba la igualdad de referencias.String str1 = "Hello"; String str2 = new String("Hello"); boolean isEqual = str1.equals(str2); // true
- Comprobaciones nulas: Realiza siempre comprobaciones de nulos antes de llamar a métodos sobre cadenas para evitar
NullPointerException
.if (str != null && str.equals("test")) { // Safe to use str }