Está en la página 1de 21

Unidad 1

STRING

1
Clase String

2
String
• Para Java, las cadenas de texto son objetos
especiales.
• Los textos, por ello, deben manejarse creando
objetos de tipo String.

• Las cadenas de texto se pueden concatenar


(unir) a través del operador “+”.

3
String
• Es posible crear objetos de la clase String
sin utilizar literals o constantes entre
comillas, usando otros constructores:

4
Comparación de String
• Los objetos String no pueden
compararse directamente con los
operadores de comparación.
• En su lugar se deben utilizar un set de
métodos.
• Pero se puede comparar “variables” de la
clase String, con operadores relacionales.

5
Comparaciones de objetos String
• cadena1.equals(cadena2): El resultado es true si la cadena1 es
igual a la cadena2. Ambas cadenas son variables de tipo String.

• cadena1.equalsIgnoreCase(cadena2). Como la anterior, pero en


este caso no se tiene en cuenta mayúsculas y minúsculas.

• s1.compareTo(s2). Compara ambas cadenas, considerando el


orden alfabético.
– Si la primera cadena es mayor en orden alfabético que la segunda
devuelve 1
– Si son iguales devuelve 0
– Si es la segunda es la mayor devuelve -1.
• Hay que tener en cuenta que el orden no es el del alfabeto español,
sino que usa la tabla ASCII (La letra ñ es mucho mayor que la o)

• s1.compareToIgnoreCase(s2). Como la anterior, sólo que además


ignora las mayúsculas.

6
String.valueOf
• Este método pertenece no sólo a la clase
String.
• Convierte valores de una clase a otra.
• En el caso de los objetos String, permite
convertir valores que no son de String a
String.

7
Métodos de la clase String
• Son métodos que poseen las propias
variables String.
• Para utilizarlos basta con poner el nombre
del método y sus parámetros después del
nombre de la variable String.
• Formato:
variableString.método(argumentos)

8
Métodos de la clase String
• length:
– Permite devolver la longitud de un String
(cantidad de caracteres)

• concat:
– Permite unir Strings.

9
Métodos de la clase String
• charAt:
– Devuelve un carácter del String. El carácter a devolver se indica
por su posición (el primer carácter es la posición 0). Si la
posición es negativa o sobrepasa el tamaño del String, se
genera la excepción tipo IndexOutOfBounds-Exception.

• substring:
– Permite obtener una sección del texto de un String. La sección
se toma desde una posición inicial hasta una posición final (sin
incluir esa posición final). Si las posiciones indicadas no son
válidas ocurre una excepción de tipo IndexOutOfBounds-
Exception. Se empieza a contar desde la posición 0.

10
Métodos de la clase String
• indexOf:
– Devuelve la primera posición en la que aparece un determinado
texto. En caso que el texto buscado no se encuentre, devuelve -1.
El texto a buscar puede ser char o String. También se puede
buscar desde una determinada posición.

• lastIndexOf:
– Devuelve la última posición en la que aparece un determinado
texto. Es casi idéntica a la anterior, sólo que busca desde el final.
También se puede buscar desde una determinada posición.

11
Métodos de la clase String
• endsWith:
– Devuelve true si el String termina con un
determinado texto.

• startsWith:
– Devuelve true si el String comienza con un
determinado texto (Sensible a mayúsculas y
minúsculas)

12
Métodos de la clase String
• replace:
– Cambia todas las apariciones de un carácter por otro
en el texto que se indique y lo almacena como
resultado. El texto original no se cambia, por lo que
hay que asignar el resultado de replace a otro String
para almacenar el texto cambiado. También existe el
método replaceAll que realiza lo mismo.

13
Métodos de la clase String
• toUpperCase:
– Devuelve el String en mayúsculas.

• toLowerCase:
– Devuelve el String en minúscula.
• toCharArray:
– Obtiene un array de caracteres a partir de un
String.

14
Métodos de la clase String

15
Métodos de la clase String

16
Métodos de la clase String

17
Métodos de la clase String

18
Ejercicio String – Ejercicio 18
• Crear una clase pública de nombre EjercicioString1 que
contenga sólo al método main y partiendo del String "En
mi proxima vida, creere en la reencarnacion", muestre
por consola lo siguiente:
– Su longitud
– El carácter asociado al índice 7
– Ubicación (donde comienza) de la subcadena "creere"
– El índice que ocupa la “x”
– El String transformada a mayúsculas
– Por último, comprobar si el primer carácter del String es 'E'
y mostrar por consola un mensaje que lo indique.
– Cantidad de veces en que aparece el carácter ‘i’.

19
Ejercicio String– Ejercicio 19
• Crear una clase pública de nombre EjercicioString2 que
contenga sólo al método main y mostrar por consola el
número de veces que aparecen las letras a, o y e en el
String “Hoy es sabado y voy a ir de carrete con mis
compadritos, quemando bencina y bailando hasta la
madrugada”
• Además, si el número de veces que se repite la a es
superior a 10 debe aparecer el mensaje "Exceso de a",
si el número de veces que se repite la o es superior a 5
debe mostrarse "Exceso de o" y si se repite más de 3
veces la letra e debe mostrarse "Exceso de e"

20
Ejercicio String– Ejercicio 20
• Verificar si una cadena de texto almacenada en el String nif (Número de
Identificación Fiscal), es un NIF correcto o no. Si lo es, se mostrará por
consola su parte numérica; si no lo es, se mostrará el mensaje "NIF no
valido". Se tendrá en cuenta lo siguiente:
• Suponer que los NIFs tienen 8 dígitos y, a continuación, una letra (no
importa que sea mayúscula o minúscula).
• PISTAS: dos condiciones que debe cumplir el NIF: tener 9 caracteres y que
el último sea una letra. Comprobado esto, verificar que el resto de
caracteres son dígitos.
• RECOMENDACIONES:
– Usar el método length() de java.lang.String para conocer el número de
caracteres de una cadena de texto.
– Usar el método estático isLetter(char c) de java.lang.Character para comprobar
que un carácter es una letra.
– Usar el método estático isDigit(char c) de java.lang.Character para comprobar
que un carácter es un dígito.
– Usar el método substring(int inicio, int fin) de java.lang.String para obtener la
parte numérica del nif

21