Ir al contenido

Tipos de datos objeto en Java

Desde la versión Java 5 existen los tipos de datos objeto en Java dentro de la librería java.lang. Aunque, quizás, siguen gozando poca popularidad quizás por cosas como el consumo de memoria o la complejidad a la hora de realizar operaciones de comparación. Entre los tipos de datos objeto en Java encontramos:

Tipo PrimitivoTipo Objeto
booleanBoolean
charChar
byteByte
shortShort
intInteger
longLong
floatFloat
doubleDouble

undefined En todos los tipos de datos objeto en Java podemos envolver su respectivo tipo de dato primitivo para poder realizar las operaciones directamente sobre un objeto. De igual manera de un tipo de dato objeto podremos obtener su valor como tipo de dato primitivo. Veamos como sería para cada uno de los tipos de datos primitivo y su dato objeto correspondiente:

Podemos pasar el tipo de dato boolean al constructor del objeto Boolean y el método .booleanValue() nos devolverá el tipo boolean.

Boolean refBoolean = new Boolean(true);
boolean bool = refBoolean.booleanValue();

En el caso del byte al constructor Byte deberemos de hacer un casting del valor entero para poder instanciarlo. La obtención del dato byte desde un Byte se realizará con .byteValue().

Byte refByte = new Byte((byte) 123);
byte b = refByte.byteValue();

En el caso de pasar de un char a un Character se cargará mediante el constructor. Y el método .charValue() nos resolverá el acto contrario.

Character refChar = new Character('x');
char c = refChar.charValue();

Cuando carguemos el constructor de Short deberemos de hacer un casting mediante (short) al valor pasado como parámetro. El método .shortValue() nos retorna un short desde el objeto Short.

Short refShort = new Short((short) 123);
short s = refShort.shortValue();

El int e Integer tienen un constructor directo y un método .intValue() para obtener el efecto contrario.

Integer refInt = new Integer(123);
int i = refInt.intValue();

A los datos long hay que postponerles la letra L cuando los carguemos sobre un objeto Long. El método .longValue() nos da lo inverso.

Long refLong = new Long(123L);
long l = refLong.longValue();

Si para long era la letra L, para float es la letra F en el constructor del objeto Float. El método .floatValue() nos devuelve un tipo float.

Float refFloat = new Float(12.3F);
float f = refFloat.floatValue();

Para los tipos de datos double tenemos que posponer la letra D en el constructor Double y utilizar el método .doubleValue() para obtener un tipo double.

Double refDouble = new Double(12.3D);
double d = refDouble.doubleValue();
Foto de Víctor Cuervo

Víctor Cuervo

Programador, Arquitecto IT, álter ego de Línea de Código, amante de las tecnologías, generador de conocimiento y facilitador del aprendizaje.

Descarga el código de Tipos de datos objeto en Java

Ejemplo que nos enseña como podemos convertir todos los tipos de datos objeto en java en tipos primitivos y viceversa.

Descargar código
Pon a prueba tu conocimiento
Variables en Java

¿Cuál de las siguientes declaraciones de variable es válida en Java?

  • A int 1numero = 10;
  • B int numero = 10;
  • C integer numero = 10;
  • D num int = 10;