English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriel de base Java

contrôle de flux Java

Java tableau

Java orienté objet (I)

Java orienté objet (II)

Java orienté objet (III)

Gestion des exceptions Java

Java List

Java Queue (file d'attente)

Java Map collection

Java Set collection

Java entrée/sortie (I/O)

Java Reader/Writer

autres sujets Java

Java automatic boxing and unboxing

Dans ce tutoriel, nous allons apprendre l'emballage et le dégépackaging automatiques de Java à l'aide d'exemples.

emballage automatique Java-le type primitif de l'objet enveloppeur

dansemballage automatiqueLe compilateur Java convertit automatiquement les types primitifs en leurs objets de classes enveloppeuses correspondantes. Par exemple,

int a =; 56;
// Auto-boxing
Integer aObj = a;

Lors de l'utilisation des collections Java,Auto-boxingil a de nombreux avantages.

Example1:emballage automatique Java

import java.util.ArrayList;
class Main {
   public static void main(String[] args) {
      ArrayList<Integer> list = new ArrayList<>();
      //Auto-boxing
      list.add(5);
      list.add(6);
      System.out.println("ArrayList: " + list);
   }
}

Output result

ArrayList: [5, 6]

Dans l'exemple précédent, nous avons créé une liste d'arrays de type Integer. Par conséquent, la liste d'arrays ne peut contenir que des objets de type Integer.

Attention à cette ligne,

list.add(5);

Ici, nous passons la valeur de type primitif. Cependant, en raison deAuto-boxing, la valeur primitive est convertie automatiquement en objet Integer et stockée dans la liste d'arrays.

dégépackaging Java-l'objet enveloppeur pour le type primitif

dansdégépackagingLe compilateur Java convertit automatiquement les objets de classes enveloppeuses en leurs types primitifs correspondants. Par exemple,

// Auto-boxing
Integer aObj =; 56;
// Unboxing
int a = aObj;

AsAutomaticBoxingSimilarlyUnboxingCan also be used with Java collections.

Example2:Java unboxing

import java.util.ArrayList;
class Main {
   public static void main(String[] args) {
      ArrayList<Integer> list = new ArrayList<>();
      //Auto-boxing
      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);
   }
}

Output result

ArrayList: [5, 6]
Value at index 0: 5

In the above example, please note the following line:

int a = list.get(0);

Here, the get() method returns the object at index 0. However, due toUnboxingThe object is automatically converted to the primitive type int and assigned to the variable a.