Boxing/Unboxing

À l’intérieur de Java, tout est objet… ou presque : il existe ce que l’on appelle les types primitifs, tels que int, double, float, char, boolean.

Chacun de ces types primitifs a un équivalent objet : Integer, Double, Float, Character, Boolean.

Afin de faciliter le codage, le langage Java peut faire une conversion automatique du type primitif en son équivalent objet : il s’agit du mécanisme de boxing.


private Integer transformer(int entier) {  
    return entier;      // convertit le type primitif int 
                        // en objet de type Integer  
}
 

Pour le faire à la main, utilisez la méthode statique valueOf() des classes Boolean, Integer, Double, Float ou Character.


private Boolean transformer(boolean booleen) {  
    // convertit le type primitif boolean 
    // en objet de type Boolean 
    return Boolean.valueOf(booleen); 
}
 

L’opération inverse, dite d’unboxing, permet quant à elle de transformer les objets Java en leur type primitif.


private double convertir(Double decimal) {  
    return decimal;    // convertit l'objet de type Double 
                       // en valeur de type primitif. 
}
 

Pour le faire à la main, utilisez les méthodes d’instance xxxValue() :


Boolean...
couv_9JAV.png

Découvrez 

le livre :

Aussi inclus dans nos :

Précédent
Gestion des erreurs
Suivant
Enums