Classes Java Wrapper
Classes Java Wrapper
As classes wrapper fornecem uma maneira de usar tipos de dados primitivos ( int
, boolean
, etc.) como objetos.
A tabela abaixo mostra o tipo primitivo e a classe wrapper equivalente:
Primitive Data Type | Wrapper Class |
---|---|
byte | Byte |
short | Short |
int | Integer |
long | Long |
float | Float |
double | Double |
boolean | Boolean |
char | Character |
Algumas vezes você deve usar classes wrapper, por exemplo ao trabalhar com objetos Collection, como ArrayList
, onde tipos primitivos não podem ser usados (a lista só pode armazenar objetos):
Exemplo
ArrayList<int> myNumbers = new ArrayList<int>(); // Invalid
ArrayList<Integer> myNumbers = new ArrayList<Integer>(); // Valid
Criando Objetos Wrapper
Para criar um objeto wrapper, use a classe wrapper em vez do tipo primitivo. Para obter o valor, basta imprimir o objeto:
Exemplo
public class Main {
public static void main(String[] args) {
Integer myInt = 5;
Double myDouble = 5.99;
Character myChar = 'A';
System.out.println(myInt);
System.out.println(myDouble);
System.out.println(myChar);
}
}
Como agora você está trabalhando com objetos, você pode usar determinados métodos para obter informações sobre o objeto específico.
Por exemplo, os métodos a seguir são usados para obter o valor associado ao objeto wrapper correspondente: intValue()
, byteValue()
, shortValue()
, longValue()
,
floatValue()
, doubleValue()
, charValue()
,
booleanValue()
.
Este exemplo produzirá o mesmo resultado do exemplo acima:
Exemplo
public class Main {
public static void main(String[] args) {
Integer myInt = 5;
Double myDouble = 5.99;
Character myChar = 'A';
System.out.println(myInt.intValue());
System.out.println(myDouble.doubleValue());
System.out.println(myChar.charValue());
}
}
Outro método útil é o toString()
método, que é usado para converter objetos wrapper em strings.
No exemplo a seguir, convertemos an Integer
em a String
e usamos o length()
método da String
classe para gerar o comprimento da "string":
Exemplo
public class Main {
public static void main(String[] args) {
Integer myInt = 100;
String myString = myInt.toString();
System.out.println(myString.length());
}
}