F.4411.316.013 - POEJ/MIXTO/F.
Generation/
Curso JAVA (Online-Nacional) 3ªEd.
Java Bootcamp
Eduardo Corral Muñoz
eoi_eduardo@[Link]
Clases
Wrapper
Índice
_01 Introducción _05 Clase Character
_02 Clase Integer _06 Clase Boolean
_03 Clase Long _07 Operadores
_04 Clases Double y Float Relacionales
01
Introducción
Introducción
Las clases wrapper (envoltorio) representan a un tipo primitivo en
forma de objeto, dotándole de métodos de validación y
conversión a tipos compatibles.
Cada tipo primitivo tiene su clase wrapper equivalente
byte Byte
short Short
int Integer
long Long
float Float
double Double
char Character
boolean Boolean
02
Clase Integer
Integer
Con esta clase se implementan varios métodos que resultan muy
útiles al trabajar con enteros, como por ejemplo la conversión de
tipos:
Integer i = [Link](1234567); // Integer i = 1234567
String s = [Link]();
int j = [Link]();
long l = [Link]();
float f = [Link]();
double d = [Link]();
int t = [Link](“8765431”);
Integer
Constantes:
Integer.MIN_VALUE
Integer.MAX_VALUE
Métodos estáticos:
String [Link](int i, int base);
String [Link](int i);
int [Link](String s, int base);
int [Link](String s);
Integer [Link](String s, int base);
Integer [Link](String s);
Integer
Métodos de la instancia:
int intValue()
long longValue()
float floatValue()
doble doubleValue()
byte byteValue()
short shortValue()
String toString()
int hashCode()
boolean equals(Object obj)
03
Clase Long
Long
Al igual que con Integer, con esta clase se implementan varios
métodos que resultan muy útiles al trabajar con enteros largos (8
bytes), como por ejemplo la conversión de tipos:
Long l = [Link](256688585555L);
String s = [Link]();
int j = [Link]();
long k = [Link]();
float f = [Link]();
double d = [Link]();
long t = [Link](“92225155555585858”);
Long
Constantes:
Long.MIN_VALUE
Long.MAX_VALUE
Métodos estáticos:
String [Link](long i, int base);
String [Link](long i);
long [Link](String s, int base);
long [Link](String s);
Long [Link](String s, int base);
Long [Link](String s);
Long
Métodos de la instancia:
int intValue()
long longValue()
float floatValue()
doble doubleValue()
byte byteValue()
short shortValue()
String toString()
int hashCode()
boolean equals(Object obj)
04
Clase Double y Float
Double
Al igual que con las anteriores, con esta clase se implementan
varios métodos trabajar con enteros double, como por ejemplo la
conversión de tipos:
Double d = [Link](256688585555D);
String s = [Link]();
int i = [Link]();
long l = [Link]();
float f = [Link]();
double t = [Link]();
double k = [Link](“922.251E-2”);
Double
Constantes:
Double.MIN_VALUE
Double.MAX_VALUE
Double.POSITIVE_INFINITY
Double.NEGATIVE_INFINITY
Métodos estáticos:
Double [Link](String s);
Double [Link](double d);
double [Link](String s)
String [Link](double d);
boolean [Link](double d);
boolean [Link](double d);
Long
Métodos de la instancia:
int intValue()
long longValue()
float floatValue()
doble doubleValue()
byte byteValue()
short shortValue()
String toString()
int hashCode()
boolean equals(Object obj)
boolean isNaN()
boolean isInfinite()
Float
Exactamente lo mismo que la clase Double.
05
Clase Character
Character
Esta clase implementa varios métodos de conversión y
comprobación para el tipo primitivo char:
Character c = [Link](‘A’);
String s = [Link]();
char c1 = [Link]();
char c2 = [Link](c);
boolean b = [Link](c);
boolean b = [Link](c);
boolean b = [Link](c);
boolean b = [Link](c);
boolean b = [Link](c);
boolean b = [Link](c);
Character
Métodos estáticos
Conversión de caracteres:
Character [Link](c)
char [Link](c)
char [Link](c)
Comprobaciones:
boolean [Link](c)
boolean [Link](c)
boolean [Link](c)
boolean [Link](c)
boolean [Link](c)
boolean [Link](c)
Métodos de la instancia:
String toString();
char charValue()
boolean equals(Object obj)
06
Clase Boolean
Bolean
El tipo primitivo boolean también tiene su clase wrapper
asociada, Boolean, aunque tiene menos métodos asociados que
las clases anteriores:
Boolean b = [Link](true);
Boolean b1 = [Link](“true”);
String s = [Link]();
boolean b2 = [Link]();
Boolean
Constantes:
[Link]
[Link]
Métodos de la instancia:
boolean [Link]()
String toString()
boolean equals(Object obj)
07
Operadores relacionales
Operadores relacionales
A la hora usar operadores relacionales con objetos creados con
clases wrapper hemos de tener en cuenta que se compara todo
el objeto y no solo el valor que le hayamos dado.
Integer n1 = [Link](500);
Integer n2 = n1;
Si comparamos con (n1 == n2) el resultado es true, porque
ambos son el mismo objeto y con el mismo valor.
n2 = 500;
Si comparamos con (n1 == n2) el resultado es false, porque no
son el mismo objeto.
Operadores relacionales
Para comparar valores debemos emplear otros métodos
Integer n1 = [Link](500);
Integer n2 = 500;
(n1 == n2) devuelve false (no son el mismo objeto)
[Link](n2) devuelve true (el mismo valor)
[Link]() == [Link]() devuelve true (el mismo valor)
Los operadores <,>,<=,>= si funcionan como con primitivos.