Si encuentras algún fallo en tu código o proyecto, recuerda probar siempre en un ambiente de testing antes aplicar el código al trabajo final.
Solución:
Usted lo está haciendo bien. De la documentación:
Las cadenas son constantes; sus valores no se pueden cambiar después de crearlos. Los búferes de cadenas admiten cadenas mutables. Debido a que los objetos String son inmutables, se pueden compartir.
También de la documentación:
podar
Recorte de cadena pública ()
Devuelve una copia del string, omitiendo los espacios en blanco iniciales y finales. Si este objeto String representa una secuencia de caracteres vacía, o si el primer y el último carácter de la secuencia de caracteres representada por este objeto String tienen códigos mayores que ‘u0020’ (el carácter de espacio), se devuelve una referencia a este objeto String.
De lo contrario, si no hay ningún carácter con un código mayor que ‘u0020’ en el stringluego un nuevo objeto String que representa un vacío string
se crea y se devuelve.De lo contrario, sea k el índice del primer carácter en el string
cuyo código es mayor que ‘u0020’, y sea m el índice del último carácter en el string cuyo código es mayor que ‘u0020’. Se crea un nuevo objeto String, que representa la subcadena de este
string que comienza con el carácter en el índice k y termina con el carácter en el índice m, es decir, el resultado de this.substring(k, m+1).Este método se puede utilizar para recortar espacios en blanco (como se define anteriormente) desde el principio y el final de un string.
Devoluciones:
una copia de esto string con el espacio en blanco inicial y final eliminado, o esto string si no tiene espacios en blanco al principio o al final.
Como las cadenas en Java son objetos inmutables, no hay forma de ejecutar el recorte en el lugar. Lo único que puede hacer para recortar el string es crear una nueva versión recortada de su string y devolverlo (y esto es lo que el trim()
el método lo hace).
En teoría, no se está asignando una variable a sí misma. Está asignando el valor devuelto del método trim() a su entrada variable.
En la práctica, la implementación del método trim() está optimizada para que cree (y devuelva) otra variable solo cuando sea necesario. En otros casos (cuando en realidad no hay necesidad de recortar) está devolviendo una referencia al original string (en este caso, en realidad se está asignando una variable a sí mismo).
Consulte http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/lang/String.java#String.trim%28%29
De todos modos, trim () no modifica el original stringpor lo que esta es la forma correcta de usarlo.