You are on page 1of 28

CADENA DE CARACTERES

Clase

String Mtodos

Sonia Miralles

1.LA CLASE STRING Las cadenas de caracteres en Java se tratan como objetos de la clase String.

La clase String pertenece al paquete java.lang . Proporciona todo tipo de operaciones con cadenas de caracteres. Esta clase ofrece mtodos de conversin a cadena de nmeros , conversin a maysculas, minsculas, reemplazamiento, concatenacin, comparacin, etc.

Sonia Miralles

2. MTODOS
String (String dato) int length () String concat (String s) String toString() int compareTo(String s) boolean equals() Boolean equalsIgnoreCase() String trim() String toLowerCase() String toUpperCase() String replace(char c1, char c2) String substring( int i, int j) Boolean startsWith (String s) Boolean startsWith(String s, indice i) Boolean endsWith (String s) char charAt(int pos) int indexOf (int c) int indexOf(String s) char[] toCharArray() String valueOf(int dato)

Recuerda : Aparte de todos los siguientes mtodos, el propio lenguaje java ofrece el operador de concatenacin +.

Sonia Miralles

2. MTODOS

String (String dato) : Constructor de la clase String.


String cad1 = Pepe; String cad2 = new String (Lionel); String cad3 = new String (cad2);

Crean objetos de la clase String. El objeto cad3 est creado a partir del objeto cad2 y contendr los mismos datos Lionel.

int length() : Muestra la longitud de un objeto de la


clase String.
String cad1 = CHELO; System.out.println (cad1.length());

El cdigo anterior muestra la longitud del objeto cad1 (5)

Sonia Miralles

2. MTODOS

String concat (String s) : Devuelve un objeto fruto de


la concatenacin/unin de un objeto String con otro.
String cad1 = Andy; cad1 = cad1.concat(Rosique); System.out.println(cad1);

Concatena las cadenas Andy y Rosique, y muestra por pantalla el resultado de la concatenacin (AndyRosique).

String toString() : Devuelve el propio String.


String c1= Ana; String c2 = Lpez; System.out.println(c1.toString()+c2.toString());

Mostrar AnaLpez

Sonia Miralles

2. MTODOS

int compareTo (String s) : Compara el objeto String


con el objeto String pasado como parmetro y devuelve un nmero:
<0 : Si es menor el string desde el que se hace la llamada
al String pasado como parmetro. =0 : Si es igual el string desde el que se hace la llamada al String pasado como parmetro. >0 : Si es mayor el string desde el que se hace la llamada al String pasado como parmetro. El mtodo va comparando letra a letra ambos String y si encuentra que una letra u otra es mayor o menor que otra deja de comparar y devuelve un valor de los anteriores.

Sonia Miralles

2. MTODOS

int compareTo (String s) : Ejemplos


String cad1 = EMMA; String cad2 = MARA; System.out.println(cad1.compareTo(emma)); System.out.println(cad1.compareTo(EMMA)); System.out.println(cad1.compareTo(ENMA MORENO)); System.out.println(cad2.compareTo(MARIA AMPARO); System.out.println(cad2.compareTo(MAREA);

El cdigo anterior mostrar por pantalla los siguientes datos: -32,0,-7, -7 y 4. Este mtodo distingue entre maysculas y minsculas. Las maysculas estn antes por orden alfabtico que las minsculas, por lo tanto A es menor que a.

Sonia Miralles

2. MTODOS

boolean equals ( String s) : Compara el contenido de


dos objetos del tipo String.
String cad1 = EMMA; String cad2 = new String (EMMA); if (cad1.equals(cad2)){ System.out.println(SON IGUALES);} else{ System.out.println(SON DIFERENTES);};

El cdigo anterior mostrar por pantalla SON IGUALES.

Sonia Miralles

2. MTODOS

boolean equalsIgnoreCase ( String s) : compara dos


String comprobrando si tienen los mismos caracteres y en el mismo orden sin tener en cuenta las maysculas. Si es as devuelve true y si no false.
String cad1 = EMMA; String cad2 = new String (Emma); if (cad1.equals(cad2)){ System.out.println(SON IGUALES);} else{ System.out.println(SON DIFERENTES);};

El cdigo anterior mostrar por pantalla SON IGUALES.

Sonia Miralles

Diferencia entre mtodo equals y el operador ==


String cad1=ENMA; String cad2=new String(ENMA); if (cad1.equals(cad2)) { System.out.println (SON IGUALES);} else { System.out.println (SON DIFERENTES);} if (cad1= =cad2){ System.out.println ( SON IGUALES);} else { System.out.println (SON DIFERENTES);}

Mostrar por pantalla las siguientes cadenas : SON IGUALES y SON DIFERENTES . En el primer caso, son iguales porque contienen la misma secuencia de caracteres y el segundo de los casos son diferentes porque son diferentes objetos.

Sonia Miralles

Diferencia entre mtodo equals y el operador ==


Para que en el segundo caso muestre la cadena SON IGUALES debera de cambiarse la lnea de cdigo:
String cad2= new String(EMMA);

Por la siguiente:
String cad2=cad1;

En este ltimo caso es importante recalcar que cad2 y cad1 apuntan al mismo objeto.

Sonia Miralles

2. MTODOS String trim ( ) : Elimina los espacios en blanco que contenga el objeto String al principio y final del mismo. No elimina los espacios en blanco situados entre las palabras.
String cad1 = MAYKA ; String cad2 = cad1.trim(); System.out.println(cad2.toString());

Mostrar por pantalla la cadena MAYKA sin espacios.

String

toLowerCase() : Convierte las maysculas del objeto String en minsculas.


Mostrar ana ruiz

letras

String cad1= ANA ruiz, cad2=cad1.toLowerCase(); System.out.println(cad2.toString());

Sonia Miralles

2. MTODOS

String

toUpperCAse() : Convierte las minsculas del objeto String en maysculas.


Mostrar por pantalla la cadena JUAN SERRANO.

letras

String cad1 = JUAN serrano, cad2=cad1.toUpperCase(); System.out.println(cad2.toString());

String replace ( char car, char newcar) : Reemplaza


cada ocurrencia del carcter car por el carcter newcar.
String cad1= JUAN SUAREZ; String cad2=cad1.replace(U,O); System.out.println(cad2.toString());

Mostrar JOAN SOAREZ

Sonia Miralles

2. MTODOS

String substring(int i, int f) : Este mtodo devuelve un


nuevo objeto String que ser la subcadena que comienza en el carcter i y termina en el carcter f (el carcter f no se muestra). Si no se especifica el segundo parmetro devolver hasta el final de la cadena.
String cad1 = JUAN CARLOS MORENO; System.out.println(cad1.substring(5,11)); System.out.println(cad1.substring(12);

Mostrar por pantalla la cadena CARLOS y despus MORENO.

Sonia Miralles

2. MTODOS

boolean startsWith (String cad) : Este mtodo


devuelve true si el objeto String comienza con la cadena cad, en caso contrario devolver false.
String cad1= MAYKA MORENO System.out.println(cad1.startsWith(JOSE)); System.out.println(cad1.startsWith(MAY));

Mostrar por pantalla false y true.

Sonia Miralles

2. MTODOS

boolean startsWith ( String s int indice): devuelve


true si el String sobre el que se aplica comienza por el del argumento a partir de un determinado ndice asociado al segundo argumento; false si esto no ocurre.
String cad1= MAYKA MORENO System.out.println(cad1.startsWith(MO,6)); System.out.println(cad1.startsWith(MAY,1));

Mostrar por pantalla true y false ( la cadena empieza en 0).

Sonia Miralles

2. MTODOS

boolean endsWith (String cad) : Este mtodo


devuelve true si el objeto String termina con la cadena cad, en caso contrario devuelve false.
String cad1 = MARIA AMPARO; System.out.println(cad1.endsWith(paro)); System.out.println(cad1.endsWith(PARO)); System.out.println(cad1.endsWith(ARIA));

Mostrar false, true y false. (Recuerda que Java distingue entre p y P , al tener smbolo ASCII diferente el resultado es false.

Sonia Miralles

2. MTODOS

char charArt ( int pos) : Devuelve el carcter del


objeto String que se especifica en el parmetro pos.
String cad1= AMPARO HEREDIA System.out.println(cad1.charAt(0)+ + cad1.charAt(7));

Mostrar la cadena A H. Ojo! : el ndice debe estar comprendido entre 0 y length()-1 si no Java lanza excepcin.

Sonia Miralles

2. MTODOS

int indexOf(int c) o int indexOf(String cad) : Admite


dos tipos de parmetros. Encuentra la primera ocurrencia de un carcter o una subcadena dentro de un objeto del tipo String. En el caso de que no sea encontrado el carcter o la subcadena, este mtodo devolver el valor -1.
String cad1 = EMMA MORENO; System.out.println(cad1.indexOf(M)); System.out.println(cad1.indexOf(J)); System.out.println(cad1.indexOf(MO)); System.out.println(cad1.indexOf(MI));

El cdigo anterior mostrar : 1, -1, 5 y -1

Sonia Miralles

2. MTODOS

Char[] toCharArray () : Este mtodo devuelve un


vector o array de caracteres a partir del propio objeto String.
String cad1 = NARA VELASCO; char cad2[]=cad1.toCharArray();

El cdigo anterior crear un array de caracteres cad2 que contendr la cadena NARA VELASCO contenida en el objeto String cad1.

Sonia Miralles

2. MTODOS

String valueOf(int dato) : Convierte un nmero a un


objeto String. La clase String es capaz de convertir los tipos primitivos int, long, float y double.
int edad1=6; String str=String.valueOf(edad1); float edad2=6; str=String.valueOf(edad2); long edad3=6; str=String.valueOf(edad3); double edad4=6.5; str=String.valueOf(edad4);

Sonia Miralles

CONVERTIR UN STRING EN UN NMERO


String snumero= 6 ; int numero=Integer.parseInt(snumero.trim()); // int numero=Integer.parseInt(snumero);

Con el cdigo anterior es posible convertir un objeto String en un nmero entero. La tercera lnea est comentada porque lanzara una excepcin dado que no se han limpiado los espacios a derecha e izquierda de la cadena y contiene caracteres no numricos. Si el nmero es un decimal y no se quieren perder los decimales se utilizara el siguiente cdigo:

String snumero=6.5; Double numero=double.valueOf(snumero).doubleValue();

Sonia Miralles

ACTIVIDADES (RELACIN 5)
1.

Crear una clase pblica de nombre EjercicioString1 que contenga slo al mtodo main y partiendo de la String "En mi prxima vida, creer en la reencarnacion" declarada e inicializada como variable primitiva, mostrar por consola lo siguiente:

Su longitud El carcter asociado al ndice 7 La subcadena "creer" El ndice que ocupa el carcter 'x' La String transformada en maysculas Por ltimo, comprobar si el primer carcter de la String es 'E' y mostrar por consola un mensaje que lo indique.

Sonia Miralles

ACTIVIDADES

Debe mostrar por pantalla:


Longitud de la cadena: 46 Indice 7 asociado al caracter r La subcadena generada desde 20 incluido hasta 26 excluido es creer. El ndice del caracter x es 9 La cadena en maysculas es: EN MI PROXIMA VIDA, CREERE EN LA REENCARNACION El String comienza por E

Sonia Miralles

ACTIVIDADES
2.

3.

Crear un programa que muestre por consola el nmero de veces que aparece la letra "a" en el siguiente String "Maana es sbado sabadete y voy a salir de caas al bar de enfrente. Basndote en el texto anterior, mostrar por consola el nmero de veces que aparecen las letras a, o y e en la String del ejercicio anterior. Adems, si el nmero de veces que se repite la a es superior a 10 debe aparecer el mensaje "Exceso de a", si el nmero de veces que se repite la o es superior a 4 debe mostrarse "Exceso de o" y si se repite ms de 5 veces la letra e debe mostrarse "Exceso de e"

Sonia Miralles

ACTIVIDADES
4.

Implementa el cdigo necesario para dados 4 nombres en 4 strings diferentes:


a) b) c) d) e)

Comprobar si alguno de ellos empieza por la misma letra. Comprobar si hay algun nombre compuesto. Almacenar todos los nombres en una unica cadena llamada Listado. Mostrar el contenido de listado carcter a carcter. Extraer de listado el segundo de los strings ( debes conocer la longitud de todos..)

Sonia Miralles

ACTIVIDADES
5.

Verificar si una cadena de texto almacenada en el String nif, es un NIF correcto o no. Si lo es, se mostrar por consola su parte numrica; si no lo es se mostrar el mensaje "NIF no valido". Se tendr en cuenta lo siguiente: Suponer que los NIFs tienen 8 dgitos y, a continuacin, una letra (no importa que sea mayscula o minscula). 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 dgitos.

Sonia Miralles

ACTIVIDADES
RECOMENDACIONES: Usar el mtodo length() de java.lang.String para conocer el nmero de caracteres de una cadena de texto. Usar el mtodo esttico isLetter(char c) de java.lang.Character para comprobar que un carcter es una letra. Usar el mtodo esttico isDigit(char c) de java.lang.Character para comprobar que un carcter es un dgito. Usar el mtodo substring(int inicio, int fin) de java.lang.String para obtener la parte numrica del nif Salida por pantalla:
Si NIF correcto: 16156159B es un NIF valido Parte numrica del NIF= 16156159 Si NIF incorrecto: 16156159 no es un NIF valido

You might also like