Java desde Cero: String

Publicado el 05 marzo 2014 por Codehero @codeheroblog

Hoy vamos a ver todo lo relacionado al manejo de la clase String dentro de Java.

¿Qué es un String?

Los Strings son una secuencia de caracteres. En el lenguaje de programación Java, las cadenas de caracteres son objetos y la plataforma proporciona la clase String para crear y manipular dichas cadenas.


¿Cómo creamos un String?

La forma más fácil para crear un String es la siguiente:

String nombre = “¡Codehero!";

1 Stringnombre=“¡Codehero!";

Cada vez que se encuentra con una cadena de caracteres en el código, el compilador crea un objeto String con su valor, en este caso, “¡Codehero!’.

Al igual que con cualquier otro objeto en Java, podemos crear objetos String mediante la palabra clave new y un constructor de nuestra preferencia. La clase String tiene once constructores que nos pueden ayudar a proporcionar el valor inicial de la cadena de caracteres usando diferentes fuentes. Veamos un ejemplo del uso apropiado de uno de esos constructores. En el siguiente caso vamos a construir un String a partir de una array con caracteres.

public class Ejemplo{ public static void main(String args[]){ char[] arrayCaracteres = { 'c', 'a', 'r', 'l', 'o', 's'}; String nombre = new String(arrayCaracteres); System.out.println(nombre); } }

12345678 publicclassEjemplo{    publicstaticvoidmain(Stringargs[]){  char[]arrayCaracteres={'c','a','r','l','o','s'};  Stringnombre=newString(arrayCaracteres);    Systemoutprintln(nombre);   }}

Si ejecutamos el código anterior deberíamos obtener lo siguiente:

carlos

1 carlos

La clase String es inmutable, por lo que una vez que se crea un objeto String no se puede cambiar. Si hay una necesidad de hacer una gran cantidad de modificaciones a las cadenas de caracteres, entonces debes usar las siguientes clases String Buffer y String Builder.

No te preocupes si no manejas bien los constructores. Estos los vamos a estar explicando mas adelante en la serie.

Ahora veamos los métodos mas usados del día a día dentro de la clase String en Java:


Length

Length o longitud es uno de los métodos mas usados dentro de la clase String y sirve para conocer el número de caracteres que contiene un objeto String.

Los métodos son funciones usadas dentro del lenguaje de Java para obtener información sobre un objeto.

Veamos un ejemplo de como usar este método:

public class Ejemplo{ public static void main(String args[]) { String frase = “Hola mundo”; int longitud = frase.length(); System.out.println( “La longitud de la frase es: " + longitud ); } }

12345678 publicclassEjemplo{    publicstaticvoidmain(Stringargs[]){  Stringfrase=Hola mundo;  intlongitud=fraselength();  Systemoutprintln(La longitud de la frase es:"+longitud);   }}

Si ejecutamos el código anterior deberíamos obtener lo siguiente:

La longitud de la frase es: 10

1 La longitud de la frase es:10


Concat

La clase String incluye un método para la concatenación de dos cadenas de caracteres. Ese método se llama concat(). Veamos la sintaxis:

cadena_caracteres_1.concat(cadena_caracteres_2);

1 cadena_caracteres_1concat(cadena_caracteres_2);

Esto devolvería una nueva cadena de caracteres la cual tendría cadena_caracteres_1 mas cadena_caracteres_2. Veamos un ejemplo:

"Hola “.concat("Mundo");

1 "Hola “.concat("Mundo");

Si ejecutamos el código anterior deberíamos obtener lo siguiente:

Hola Mundo

1 Hola Mundo

La manera mas común de usar este método es con el operador +. Veamos un ejemplo:

public class Ejemplo { public static void main(String args[]) { String frase = “Bienvenido "; System.out.println(frase + “a Codehero”); } }

1234567 publicclassEjemplo{    publicstaticvoidmain(Stringargs[]){  Stringfrase=Bienvenido";  Systemoutprintln(frase+aCodehero);   }}

Si ejecutamos el código anterior deberíamos obtener lo siguiente:

Bienvenido a Codehero

1 BienvenidoaCodehero


Printf()

Printf es un método que nos ayuda a imprimir cadenas de caracteres. Veamos un ejemplo:

public class Ejemplo { public static void main(String args[]) { float variableFloat = 12.2; int variableInt = 2; String variableString = “Frase” System.out.printf(“El valor de la variable tipo float es " + "%f, el valor de la variable de tipo integer es " + "%d, y el valor del string es " + "%s", variableFloat, variableInt, variableString);

123456789101112 publicclassEjemplo{    publicstaticvoidmain(Stringargs[]){    floatvariableFloat=12.2;  intvariableInt=2;  StringvariableString=Frase”   Systemoutprintf(El valor de la variable tipo floates" +  "%f,el valor de la variable de tipo integeres" +   "%d,yel valor del stringes" +   "%s",variableFloat,variableInt,variableString);

Si ejecutamos el código anterior deberíamos obtener lo siguiente:

El valor de la variable tipo float es 12.2, el valor de la variable de tipo integer es 2, y el valor del string es frase

1 El valor de la variable tipo floates12.2,el valor de la variable de tipo integeres2,yel valor del stringes frase

Cabe destacar que:

  • %f es el contenedor para la variable variableFloat dentro del string, la f es por el tipo de variable que en este caso es porque usamos una tipo float.
  • %d es el contenedor para la variable variableInt dentro del string, la d es por el tipo de variable que en este caso es porque usamos una tipo int.
  • %s es el contenedor para la variable variableString dentro del string, la s es por el tipo de variable que en este caso es porque usamos una tipo String.

Para consultar todos los formatos de string existentes en Java te invito a visitar Formatos de variables.

Para consultar todos los métodos y constructores dentro de la clase String de Java te recomiendo que le eches un vistazo a Clase String.


Conclusión

En esta lección, vimos todo lo relacionado al manejo de la clase String dentro de Java. Si tienes alguna pregunta, yo estaré feliz de responderte en los comentarios, además espero que te unas y le eches un vistazo a todo el resto de este curso.

¡Te espero la próxima semana!