"¿Qué opinas, Amigo? ¿Cuál es la clase de Java más popular después de int?"
"Ya me diste un spoiler en el título de la lección, Ellie. ¡Es String
!"
"De hecho, es un spoiler. String
Se usa absolutamente en todas partes. Tiene un montón de métodos útiles que es mejor que conozcas.
"La String
clase es la única clase además de los tipos primitivos cuyos literales se pueden usar en una switch
declaración; el compilador maneja la adición de cadenas y los objetos String de una manera especial; String
los objetos se almacenan en la memoria de una manera especial. Básicamente, la String
clase es muy clase especial.
"Además, la String
clase tiene un montón de clases auxiliares cuyo propósito es simplificar aún más el trabajo con cadenas en Java. Cuando aprendas todo esto, muchas cosas serán mucho más fáciles de hacer para ti".
"No puedo esperar".
"Bueno, comenzaremos desde el núcleo mismo de este ecosistema: la organización de la String
clase. La estructura de la String
clase es realmente muy simple: dentro hay una matriz de caracteres ( char
matriz) que almacena todos los caracteres de la cadena. Para ejemplo, así es como se almacena la palabra 'Hola':
Es importante.
En realidad, esto no es del todo exacto. Debido a que la String
clase es muy importante, utiliza muchas optimizaciones y los datos no se almacenan internamente como una matriz de caracteres, sino simplemente como una matriz de bytes.
Métodos de la clase String
La String
clase tiene muchos métodos: ¡solo tiene 18 constructores! Entonces, a continuación enumeraré solo los más utilizados:
Métodos | Descripción |
---|---|
|
Devuelve el número de caracteres de la cadena. |
|
Comprueba si la cadena es una cadena vacía |
|
Comprueba que la cadena contiene solo caracteres de espacio en blanco: espacio, tabulador, nueva línea, etc. |
|
Devuelve el carácter en la posición de índice en la cadena. |
|
Devuelve una matriz de los caracteres (una copia) que componen la cadena |
|
Convierte una cadena en un conjunto de bytes y devuelve la matriz de bytes. |
|
Divide una cadena en varias subcadenas. |
|
Une varias subcadenas juntas |
|
Pone una cadena en el grupo de cadenas. |
"¡Eso se ve muy bien!"
"Escribamos un programa que convierta la ruta de un archivo del estilo Unix al estilo Windows. Unix usa el /
carácter para separar carpetas, mientras que Windows usa el \
carácter.
Solución 1. Usar una char
matriz
Código | notas |
---|---|
|
Cree un objeto Scanner. Lea una línea desde la consola. Convierta una cadena en una matriz de caracteres. Repita los caracteres. Si el carácter es / , reemplácelo con \ . No te olvides de escapar. Cree una nueva cadena basada en la matriz de caracteres. Muestre la cadena. |
Solución 2. Usando los métodos split()
y join()
:
Código | notas |
---|---|
|
Cree un objeto Scanner. Lea una línea desde la consola. Convierta una cadena en una matriz de cadenas . El / carácter se usa como separador (las dos barras adicionales son el resultado del doble escape). Concatene todas las cadenas en la matriz de cadenas . El \ se usa como separador (lo vemos escapado). Muestre la cadena. |
Solución 3. Usando el replace(char oldChar, char newChar)
método:
Código | notas |
---|---|
|
Cree un objeto Scanner. Lea una línea desde la consola. Simplemente reemplace un carácter por otro (el segundo tiene escape). Muestre la cadena. |
"Me gustó más la tercera solución. Pero practicaré las tres".
"Bien hecho, Amigo. Veo que ya estás impaciente por poner en práctica tus nuevos conocimientos. La lección ha terminado".
GO TO FULL VERSION