9 oct 2014

La clase String en Java

Características


En Java no existe un tipo primitivo para manejar cadenas de caracteres, se hace a través de la clase String.

Debido a su amplia utilización, la creación de objetos y asignación de valores puede hacerse como si se tratara de una clase normal, o como si fuera un tipo primitivo.

Ejs.:
String cad1= new String(Frase uno);
String cad2= Frase dos;

Las cadenas son constantes por lo que no pueden ser modificadas una vez creadas. Al asignarles un nuevo valor se les da una nueva dirección de memoria y el recolector se encarga de gestionar la antigua.

Para la concatenación se utiliza el operador +.


Principales métodos de la clase String

length()
Devuelve la longitud de la cadena.
String cad1= frase uno;
System.out.println(cad1.length());  //devuelve 9

charAt (int ind)
Devuelve el carácter de la posición ind.
char car;
car= cad.charAt(0);          // car contiene f

compareTo (String otroStr)
Compara léxicamente dos cadenas. Devuelve 0 si son iguales, un valor negativo si el primer string es menor que el segundo y uno positivo si es mayor que el segundo.
String cad2= frase dos;
num= cad1.compareTo(cad2);  // num vale 17

compareToIgnoreCase (String otroStr)
Igual que el método anterior, pero ignorando mayúsculas y minúsculas.

indexOf(String str).
Devuelve la posición de la cadena pasada como argumento sobre la primera cadena.
cad3 = cad1 + ' ' + cad2;
num= cad3.indexOf(cad2);   // num vale 10

substring(int inicio, int fin)
Devuelve una subcadena de la original, que empieza en la posición inicio y termina en fin.
cad3= cad2.substring(2,5);  //devuelve ase

replace (char viejo, char nuevo)
Reemplaza las ocurrencias del carácter viejo por el nuevo. Existen variantes para reemplazar cadenas, primeras ocurrencias o para utilizar expresiones regulares.
cad3= cad2.replace('s', 'z');  //devuelve fraze doz

toUpperCase()
Convierte en mayúsculas la cadena.
cad3 = cad2.toUpperCase();  //devuelve FRASE DOS

toLowerCase ()
Convierte en minúsculas la cadena.

split(String str)
Devuelve un vector de strings, obtenido al dividir la cadena en subcadenas definidas por el delimitador str.
cad3= "Ana#Gil#Laso#45#Lugo#68";
String cads[];
cads= cad3.split("#");
for (String cad:cads)
System.out.println(cad);
Se obtiene:
Ana
Gil
Laso
45
Lugo
68
trim()
Devuelve la cadena eliminando los espacios en blanco al principio y final de la cadena.
cad3= "   frase    ";
System.out.println(cad3.length());  //devuelve 12
cad3= cad3.trim();
System.out.println(cad3.length());  //devuelve 5

valueOf(tipo_básico tp)
Es un método estático de clase. Devuelve, como una cadena, el valor del argumento pasado como un tipo básico. Existe un método por cada tipo básico.
En muchas ocasiones no es necesario utilizarlo porque se produce una conversión de tipos implícita.
boolean varbool= true;
cad3= String.valueOf(varbool);
System.out.printf("El valor de varbool es: %s%n", varbool); //conversión implícita
System.out.printf("El valor de varbool es: %s%n",cad3);
Se obtiene:
El valor de varbool es: true
El valor de varbool es: true


No hay comentarios:

Publicar un comentario