example java string charsequence

charsequence java example



Cómo convertir CharSequence a String en Java? (3)

Al invocar su método toString() .

Devuelve una cadena que contiene los caracteres en esta secuencia en el mismo orden que esta secuencia. La longitud de la cadena será la longitud de esta secuencia.

¿Cómo puedo convertir una Java CharSequence en una String ?


Puede usar directamente String.valueOf ()

String.valueOf(charSequence)

Aunque esto es lo mismo que toString() hace una comprobación nula en la charSequence antes de llamar realmente a String.

Esto es útil cuando un método puede devolver una charSequence o un valor null .


Aquí hay un sutil problema que es un poco complicado.

El método toString() tiene una implementación base en Object . CharSequence es una interfaz; y aunque el método toString() aparece como parte de esa interfaz, no hay nada en tiempo de compilación que lo obligue a anularlo y respetar las restricciones adicionales que el método javadoc de CharSequence toString() CharSequence método toString() ; es decir, que debería devolver una cadena que contenga los caracteres en el orden devuelto por charAt() .

Su IDE ni siquiera lo ayudará al recordarle que probablemente deba anular toString() . Por ejemplo, en intellij, esto es lo que verá si crea una nueva implementación de CharSequence : http://puu.sh/2w1RJ . Tenga en cuenta la ausencia de toString() .

Si confía en toString() en una CharSequence arbitraria, debería funcionar siempre que el implementador de CharSequence hiciera su trabajo correctamente. Pero si quiere evitar toda incertidumbre, debe usar un StringBuilder y append() , así:

final StringBuilder sb = new StringBuilder(charSequence.length()); sb.append(charSequence); return sb.toString();