Está en la página 1de 28

F.4411.316.013 - POEJ/MIXTO/F.

Generation/
Curso JAVA (Online-Nacional) 3ªEd.

Java Bootcamp
Eduardo Corral Muñoz
eoi_eduardo@corral.es
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 = Integer.valueOf(1234567); // Integer i = 1234567


String s = i.toString();
int j = i.intValue();
long l = i.longValue();
float f = i.floatValue();
double d = i.doubleValue();
int t = Integer.parseInt(“8765431”);
Integer

Constantes:

Integer.MIN_VALUE
Integer.MAX_VALUE

Métodos estáticos:

String Integer.toString(int i, int base);


String Integer.toString(int i);
int Integer.parseInt(String s, int base);
int Integer.parseInt(String s);
Integer Integer.valueOf(String s, int base);
Integer Integer.valueOf(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 = Long.valueOf(256688585555L);
String s = l.toString();
int j = l.intValue();
long k = l.longValue();
float f = l.floatValue();
double d = l.doubleValue();
long t = Long.parseLong(“92225155555585858”);
Long

Constantes:

Long.MIN_VALUE
Long.MAX_VALUE

Métodos estáticos:

String Long.toString(long i, int base);


String Long.toString(long i);
long Long.parseLong(String s, int base);
long Long.parseLong(String s);
Long Long.valueOf(String s, int base);
Long Long.valueOf(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 = Double.valueOf(256688585555D);
String s = d.toString();
int i = d.intValue();
long l = d.longValue();
float f = d.floatValue();
double t = d.doubleValue();
double k = Double.parseDouble(“922.251E-2”);
Double

Constantes:

Double.MIN_VALUE
Double.MAX_VALUE
Double.POSITIVE_INFINITY
Double.NEGATIVE_INFINITY

Métodos estáticos:

Double Double.valueOf(String s);


Double Double.valueOf(double d);
double Double.parseDouble(String s)
String Double.toString(double d);
boolean Double.isNaN(double d);
boolean Double.isInfinite(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 = Character.valueOf(‘A’);
String s = c.toString();
char c1 = c.charValue();
char c2 = Character.toLowerCase(c);
boolean b = c.isDigit(c);
boolean b = c.isAlphabetic(c);
boolean b = c.isUpperCase(c);
boolean b = c.isLowerCase(c);
boolean b = c.isLetter(c);
boolean b = c.isSpaceChar(c);
Character
Métodos estáticos
Conversión de caracteres:
Character Character.valueOf(c)
char Character.toLowerCase(c)
char Character.toUpperCase(c)
Comprobaciones:
boolean Character.isLowerCase(c)
boolean Character.isUpperCase(c)
boolean Character.isDigit(c)
boolean Character.isSpaceChar(c)
boolean Character.isLetter(c)
boolean Character.isAlphabetic(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 = Boolean.valueOf(true);
Boolean b1 = Boolean.valueOf(“true”);
String s = b.toString();
boolean b2 = c.booleanValue();
Boolean

Constantes:

Boolean.TRUE
Boolean.FALSE

Métodos de la instancia:

boolean boolean.value()
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 = Integer.valueOf(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 = Integer.valueOf(500);
Integer n2 = 500;

(n1 == n2) devuelve false (no son el mismo objeto)

n1.equals(n2) devuelve true (el mismo valor)

n1.intValue() == n2.intValue() devuelve true (el mismo valor)

Los operadores <,>,<=,>= si funcionan como con primitivos.

También podría gustarte