Hola! ¿Cómo estás?

Espero que no estés con dolor de cabeza luchando con las conversiones de tipos de datos, de ser así espero poder ayudarte con éste post.

Te cuento que en Java es posible asignar un valor de un tipo a una variable de otro tipo, para eso es necesario transformar el tipo de una variable u objeto en otro diferente al original con el que fue declarado. Este proceso se denomina “conversión”, “moldeado”, “casteo” o “tipado”.

Cuando se asigna valor de un tipo de datos a otro, los dos tipos pueden no ser compatibles entre sí. Si los tipos de datos son compatibles, entonces Java realizará la conversión (automáticamente) que se conoce como Conversión automática de tipos y, en caso negativo, deberá hacer un casting o convertirlo explícitamente. Por ejemplo, asignando un valor int a una variable long.

Casteo (casting): es un procedimiento para transformar una variable primitiva de un tipo a otro, o transformar un objeto de una clase a otra clase siempre y cuando haya una relación de herencia entre ambas.

Conversión de tipo Implícita

Se realiza de forma automática al asignar un valor de un tipo a otro compatible. Ejemplo:

byte x = 5;
int y = x;

El valor almacenado en x (byte) se convertirá a entero al asignarse a y (int).

Conversión de tipo Explícita

Tu tarea como programador es de especificar el nuevo tipo al que se va a transformar el dato. Se escribe de forma explicita entre paréntesis delante del dato. Ejemplo:

byte a = 20;
int x = (int) a;

Al escribir int entre paréntesis se fuerza a cambiar el dato de tipo byte a int.

String a Integer

Integer entero = Integer.valueOf(cadena);
o
int entero = Integer.parseInt(cadena);
Ejemplo:
Integer a = Integer.valueOf("900");
o
int b = Integer.parseInt("900");

Integer a String

String cadena = Integer.toString(entero);
o
String cadena = String.valueOf(entero);
Ejemplo:
String importe = Integer.toString(900);
o
int entero = 900;
String mensaje = String.valueOf(entero);

char a String

String cadena = Character.toString(char);
Ejemplo:
char codigo = 'A';
String cadena = Character.toString(codigo);

String a char

char caracter = cadena.charAt(0); //Solo primer caracter
Ejemplo:
String codigo= "E";
char caracter = cadena.charAt(0);

String a Double

double doble = Double.parseDouble(cadena);
Ejemplo:
double doble = Double.parseDouble("900.1");

Double a String

String cadena = String.valueOf(doble);
Ejemplo:
double totalDoble = 900.5;
String totalString = String.valueOf(doble);

String a Float

float flotante = Float.parseFloat(cadena);
Ejemplo:
float importe = Float.parseFloat("900.5");

Float a String

String cadena = Float.toString(flotante);
Ejemplo:
String total = Float.toString(900.1f);

String a Boolean

Boolean boolean = Boolean.valueOf(cadena);
o
boolean boolean = Boolean.parseBoolean(cadena);
Ejemplo:
Boolean boolean = Boolean.valueOf("true");
o
boolean boolean = Boolean.parseBoolean("false");

Boolean a String

String cadena = String.valueOf(b);
o
String cadena = Boolean.toString(b);
Ejemplo:
boolean b = true;
String cadena = String.valueOf(b);
o
boolean b = false;
String cadena = Boolean.toString(b);

Espero haberte ayudado con estos ejemplos.

Nos vemos en el próximo post!

3 Replies to “Casteo o Conversión de tipos en Java”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *