You are on page 1of 2

Curso de Java

Cpsulas Formativas

Conversin del objeto String en un tipo primitivo

Una de las cosas que extraa al trabajar con Java es la extraa mezcla que existe
entre los tipos primitivos del lenguaje (int, char, etc..) con tipos derivados de
Object (String, ). A veces este tema nos puede confundir en operaciones tan
sencillas como la de convertir un String en un valor numrico.

Cada tipo primitivo (bsico) tiene un wrapper asociado que permite tratarlos como
objetos, esta es la lista de equivalencias:

byte - Byte
short - Short
int - Integer
long - Long
char - Character
float - Float
double - Double
boolean - Boolean

Cada una de estas wrapper classes o clases envoltorio (excepto Character)


tiene un mtodo que permite convertir desde String al tipo primitivo. Simplemente
hay que llamar al mtodo de la wrapper class adecuada y el String se convierte al
tipo bsico.

Por ejemplo:

String myString = "12345";


int myInt = Integer.parseInt(myString);

convierte el contenido de la variable myString a una variable int myInt. La


conversin es fcil. La conversin de cada tipo implica el empleo de un mtodo
nico para cada clase wrapper. Todas las conversiones, salvo las de Boolean se
hacen con un mtodo de nombre similar, pero todos los mtodos tienen nombres
distintos:

byte - Byte.parseByte(aString)

short - Short.parseShort(aString)

int - Integer.parseInt(aString)

long - Long.parseLong(aString)

float - Float.parseFloat(aString)

Jess Cceres Tello Pg. 1 - 2


Curso de Java

Cpsulas Formativas

double - Double.parseDouble(aString)

boolean - Boolean.getBoolean(aString)

Hay una excepcin, la clase Character no tiene este mtodo, para convertir un
String en char hay que llamar al mtodo charAt de la clase String

String hello = "Hello";

char e = hello.charAt(1);

Si el contenido del String no puede ser convertido al tipo requerido, salta la


excepcin NumberFormatException, que al ser una excepcin en tiempo de
ejecucin no requiere un bloque try-catch.

Ejemplo:

public class conversiones_String {

public static void main (String str[]) {


String myString = "12345";

Prn(Conversin a bytes: + Byte.parseByte(myString));


Prn(Conversin a short: + Short.parseShort(myString) );
Prn(Conversin a entero: + Integer.parseInt(myString) );
Prn(Conversin a long: + Long.parseLong(myString) );
Prn(Conversin a float: + Float.parseFloat(myString) );
Prn(Conversin a double: + Double.parseDouble(myString) );
Prn(Conversin a boolean: + Boolean.getBoolean(myString) );
Prn(Conversin a caracter: + myString.charAt(0) );
}

static Prn(String cadena) {


System.out.println(cadena);
}

Jess Cceres Tello Pg. 2 - 2

You might also like