Vidéo: Curso de Java 57: Wrappers: classes de tipos primitivos 2024
La différence entre les types primitifs et les types de référence est l'une des caractéristiques les plus controversées de Java, et les développeurs se plaignent souvent des différences entre les valeurs primitives et les valeurs de référence.
-
Chaque type primitif est cuit dans la langue.
Java a huit types primitifs.
-
Chaque type de référence est une classe ou une interface.
Vous pouvez définir votre propre type de référence. Le nombre de types de références dans Java est donc potentiellement illimité.
Voici l'une des "gotchas" de type primitive-versus-reference: "Vous ne pouvez pas stocker une valeur primitive dans une ArrayList. Vous pouvez écrire
// CECI EST OK: ArrayList arrayList = new ArrayList ();
car String est un type de référence. Mais vous ne pouvez pas écrire
// NE FAITES PAS: ArrayList arrayList = new ArrayList ();
parce que int est un type primitif. Heureusement, chacun des types primitifs de Java a un type wrapper , qui est un type de référence dont le but est de contenir la valeur d'un autre type. Par exemple, un objet du type Integer de Java contient une seule valeur int. Un objet du type double Java contient une seule valeur double. Un objet du type de caractère Java contient une valeur de caractère unique. Vous ne pouvez pas créer une ArrayList de valeurs int, mais vous pouvez créer une ArrayList de valeurs Integer.
// CECI EST OK: ArrayList arrayList = new ArrayList ();
Le nom de chaque type primitif commence par une lettre minuscule. Le nom de chaque type de wrapper commence par une lettre majuscule.
En plus de contenir des valeurs primitives, les classes wrapper fournissent des méthodes utiles pour travailler avec des valeurs primitives. Par exemple, la classe wrapper Integer contient parseInt et d'autres méthodes utiles pour travailler avec des valeurs int:
String string = "17"; nombre entier = entier. parseInt (chaîne);
En revanche, travailler avec des types de wrapper peut être maladroit. Par exemple, vous ne pouvez pas utiliser d'opérateurs arithmétiques avec les types de wrapper numériques de Java. Voici comment créer deux valeurs Integer et les ajouter ensemble:
Integer myInteger = new Integer (3); Integer myOtherInteger = nouvel entier (15); Entier sum = myInteger. intValue () + myOtherInteger. intValue ();