Wrapper Class est une classe importante de la bibliothèque java.lang. Les objets de classe Wrapper créent un wrapper pour les types de données primitifs. Lors de la création d'un objet de la classe wrapper, de l'espace est créé dans la mémoire où le type de données primitif est stocké. La classe Wrapper fournit certaines fonctionnalités pour la conversion de l'objet en données primitives et des données primitives en objet, c'est-à-dire le boxing/unboxing. La conversion des objets en données primitives et des données primitives en objet s'effectue automatiquement. Le type de données primitif fait référence à int, float, char, double, byte, etc.
Commencez votre cours de développement de logiciels libres
Développement Web, langages de programmation, tests de logiciels et autres
Syntaxe :
La déclaration ci-dessous montre comment fonctionne une classe Wrapper dans le programme Java.
Exemple :
int i = 100;
Dans l'exemple ci-dessous, nous pouvons voir que i est un type de données entier. Parfois, dans Java, un entier doit être transmis comme type d'objet. Dans ce cas, nous pouvons utiliser la classe wrapper pour convertir un entier en objet.
Code :
Integer intVal = new Integer(i);
Dans la syntaxe donnée ci-dessus, nous pouvons voir comment un type de données primitif est converti en objet à l'aide d'un objet de classe Integer. En outre, nous pouvons dire que le type de données primitif est encapsulé sous forme d'objet.
Vous trouverez ci-dessous quelques utilisations de la classe wrapper :
Sur la base de JavaAPI, la hiérarchie des classes Wrapper maintient Object en tête des différentes classes primitives. Le nombre, le caractère et le booléen arrivent au deuxième niveau juste après l'objet. Byte, Short, Int, Long, Float, Double relèvent du type de données Number au troisième niveau.
Les classes Wrapper utilisent les deux mécanismes suivants Autoboxing & unboxing, pour la conversion/wrapping du type de données ou la conversion d'un objet en type de données primitif.
Vous trouverez ci-dessous les différents exemples de classe Wrapper en Java :
Dans l'exemple ci-dessous, nous pouvons voir comment la conversion manuelle s'effectue via la classe wrapper de int i vers un objet k.
Code :
import java.util.*; class WrapperExample { public static void main(String args[]){ int j=100; //converting int j to integer k as an object Integer k = new Integer(j); System.out.println(j + "\n" + k); } }
Sortie :
Dans l'exemple ci-dessus, nous pouvons voir comment la conversion s'effectue explicitement.
Dans l'exemple ci-dessous, nous pouvons voir que ce processus de conversion s'effectue parfois automatiquement, c'est-à-dire appelé autoboxing.
Code :
import java.util.*; class AutoboxingUnboxingExample { public static void main(String args[]){ int j = 500; ArrayList<Integer> arrValues = new ArrayList(); arrValues.add(j); // autoboxing takes place implicitly System.out.println(arrValues.get(0)); } }
Sortie :
Dans l'exemple ci-dessus, la valeur int est convertie en objet implicitement en tant qu'objet. De plus, cette valeur peut être obtenue à partir de ArrayList.
Dans cet exemple, nous passerons par la mise en place du Unboxing. Le déballage est le processus inverse de l'Autoboxing.
Code :
import java.util.*; class AutoboxingUnboxingExample { public static void main(String args[]){ ArrayList<Integer> arrValues = new ArrayList(); arrValues.add(250); //unboxing here as int data type from Integer object int k = arrValues.get(0); //value printed is in primitive data type System.out.println(k); } }
Sortie :
Dans l'exemple ci-dessus, le champ objet ArrayList est converti en k type de données primitif, c'est-à-dire int k.
The following given example have all the details of Autoboxing & Unboxing.
Code:
import java.util.*; class WrapperConversionExample { public static void main(String args[]){ int i = 15; float j = 9.6f; double k = 120.8; byte l = 1; //creating instance of Integer object Integer iObj = new Integer(i); //creating instance of Float object Float fObj = new Float(j); //creating instance of Double object Double dObj = new Double(k); //creating instance of Double object Byte bObj = new Byte(l); //value printed is in object System.out.println("Value as an Integer object > " + iObj); System.out.println("Value as a Float object > " + fObj); System.out.println("Value as a Double object > " + dObj); System.out.println("Value as a Byte object > " + bObj); //primitive data type from the object int m = iObj; float n = fObj; double o = dObj; byte p = bObj; //value printed is in primitive data type System.out.println("Value as an int primitive type > " + m); System.out.println("Value as a float primitive type > " + n); System.out.println("Value as a double primitive type > "+ o); System.out.println("Value as a byte primitive type > " + p); } }
Output:
In the above-given program, we can see the implementation of Wrapper classes. Wrapper classes are converting the primitive data type to object & object to the primitive data type. The wrapper class provides separate classes for each primitive data type.
Through the Wrapper classes, we can easily understand autoboxing & unboxing how conversion takes place from primitive to object & its vice versa, which can be easily understood through Wrapper classes. For each of the primitive data types, there is a dedicated class in java.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!