Autoboxing e unboxing Java
Autoboxing e unboxing Java
Neste tutorial, aprenderemos sobre o autoboxing e unboxing do Java com a ajuda de exemplos.
Java Autoboxing - Tipo primitivo para objeto wrapper
Em autoboxing , o compilador Java converte automaticamente os tipos primitivos em seus objetos de classe wrapper correspondentes. Por exemplo,
int a = 56;
// autoboxing
Integer aObj = a;
Autoboxing tem uma grande vantagem ao trabalhar com coleções Java.
Exemplo 1:Java Autoboxing
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
//autoboxing
list.add(5);
list.add(6);
System.out.println("ArrayList: " + list);
}
}
Saída
ArrayList: [5, 6]
No exemplo acima, criamos uma lista de arrays do tipo Integer. Portanto, a lista de arrays pode conter apenas objetos de
Integer
modelo. Observe a linha,
list.add(5);
Aqui, estamos passando o valor do tipo primitivo. No entanto, devido ao autoboxing , o valor primitivo é convertido automaticamente em um
Integer
objeto e armazenado na lista de matrizes. Java Unboxing - Objetos Wrapper para Tipos Primitivos
No unboxing , o compilador Java converte automaticamente os objetos da classe wrapper em seus tipos primitivos correspondentes. Por exemplo,
// autoboxing
Integer aObj = 56;
// unboxing
int a = aObj;
Como boxing automático , unboxing também pode ser usado com coleções Java.
Exemplo 2:Java Unboxing
import java.util.ArrayList;
class Main {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<>();
//autoboxing
list.add(5);
list.add(6);
System.out.println("ArrayList: " + list);
// unboxing
int a = list.get(0);
System.out.println("Value at index 0: " + a);
}
}
Saída
ArrayList: [5, 6] Value at index 0: 5
No exemplo acima, observe a linha,
int a = list.get(0);
Aqui, o
get()
O método retorna o objeto no índice 0 . No entanto, devido ao unboxing , o objeto é convertido automaticamente no tipo primitivo int
e atribuído à variável a . Java
- Variáveis e literais Java
- Entrada e Saída Java Basic
- Expressões, instruções e blocos Java
- Classe e objetos Java
- Classe abstrata Java e métodos abstratos
- Java aninhado e classe interna
- Java joga e joga
- Java String replace(), replaceAll() e método replaceFirst()
- Métodos Java String toLowercase() e toUpperCase()
- Java - Objeto e Classes