Différence clé - Classe Wrapper vs Type Primitive en Java
Java est un langage de programmation populaire utilisé pour développer diverses applications. L'un des avantages de Java est qu'il prend en charge la programmation orientée objet (POO). En POO, le programme ou le logiciel peut être modélisé à l'aide d'objets. Une classe est utilisée comme modèle pour créer un objet. En programmation, il est nécessaire de stocker des données. Les emplacements de mémoire réservés pour stocker les données sont appelés variables. Chaque variable a un type de données spécifique. Il existe huit types primitifs fournis par le langage Java. Ils sont courts, byte, int, float, double, char, boolean. Parfois, il est nécessaire de convertir le type primitif en objet et l'objet de nouveau en type primitif. Les classes wrapper sont utilisées pour cette conversion. Cet article traite de la différence entre la classe wrapper et le type primitif en Java. La principale différence entre la classe wrapper et le type primitif en Java est que la classe wrapper est utilisée pour convertir un type primitif en objet et un objet en type primitif, tandis qu'un type primitif est un type de données prédéfini fourni par le langage de programmation Java.
Qu'est-ce que la classe Wrapper en Java ?
Une classe Wrapper en Java est utilisée pour convertir un type de données primitif en objet et un objet en type primitif. Même les types de données primitifs sont utilisés pour stocker les types de données primaires, les structures de données telles que les listes de tableaux et les vecteurs stockent des objets. Par conséquent, il est nécessaire d'utiliser des classes wrapper pour la conversion. Les classes wrapper correspondantes pour les types primitifs char, byte, short et int sont Character, Byte, Short et Integer. Les classes wrapper correspondantes pour long, float, double et boolean sont Long, Float, Double et Boolean.
Figure 01: Programme Java qui convertit les classes wrapper en types primitifs
Selon le programme ci-dessus, intobj est un objet de classe wrapper Integer. Le floatobj est un objet de classe wrapper Float. Le doubleobj est un objet de classe Double wrapper. L'objet Integer est converti en int primitif à l'aide de intValue(). De même, l'objet Float est converti en flottant primitif à l'aide de floatValue(). L'objet Double est converti en double primitif à l'aide de doubleValue(). Si le programmeur écrit l'instruction sous la forme int i=intobj; le compilateur écrit en interne intobj. Value(). Le processus de conversion automatique d'un objet d'une classe wrapper en son type primitif correspondant est appelé unboxing. Les collections telles que ArrayLists utilisent la classe Wrapper car elles stockent des objets.
Qu'est-ce que le type primitif en Java ?
Les types de données primitifs sont les types de données prédéfinis fournis par le langage de programmation Java. Il existe huit types primitifs. Ils sont byte, short, int, long, float, double, boolean et char. Le type de données byte est utilisé pour stocker un entier de complément à deux signé de 8 bits. Le type de données court est utilisé pour stocker un entier de complément à deux signé de 16 bits. Un type de données int est utilisé pour stocker un entier de complément à deux signé de 32 bits, tandis que le type de données long est utilisé pour stocker un entier de complément à deux signé de 64 bits. Le float est utilisé pour stocker une valeur à virgule flottante 32 bits à simple précision et le double est utilisé pour stocker une valeur à virgule flottante 64 bits à double précision. Le booléen est utilisé pour représenter vrai ou faux. Le caractère est utilisé pour stocker un seul caractère. Ce sont les huit types primitifs en Java.
Figure 02: Programme Java qui convertit les types primitifs en classes wrapper
Selon le programme ci-dessus, num1 est un type int. Il est converti en entier en passant num1 à Integer.valueOf(). Le float1 peut stocker des valeurs flottantes. Il est converti en type Float en passant float1 dans Float.valueOf(). De même, double1 peut stocker des valeurs doubles. Il est converti en type Double en passant double1 dans Double.valueOf(). Si le programmeur écrit l'instruction sous la forme Interger intobj=num1; le compilateur écrit en interne Integer.valueOf(num1); Le processus de conversion automatique du type primitif vers l'objet de classe wrapper correspondant est appelé autoboxing.
Quelle est la similitude entre la classe wrapper et le type primitif en Java ?
La classe Wrapper et le type primitif en Java peuvent être utilisés pour stocker des données dans la programmation
Quelle est la différence entre la classe wrapper et le type primitif en Java ?
Classe wrapper vs type primitif en Java |
|
La classe Wrapper fournit un mécanisme pour convertir le type primitif en objet et l'objet en type primitif. | Un type primitif est un type de données prédéfini fourni par Java. |
Classe associée | |
Une classe Wrapper est utilisée pour créer un objet; par conséquent, il a une classe correspondante. | Un type primitif n'est pas un objet donc il n'appartient pas à une classe. |
Valeurs nulles | |
Les objets de la classe wrapper autorisent les valeurs nulles. | Un type de données primitif n'autorise pas les valeurs nulles. |
Mémoire requise | |
La mémoire requise est supérieure aux types primitifs. L'index clusterisé ne nécessite pas d'espace supplémentaire. | La mémoire requise est inférieure à celle des classes wrapper. |
Collections | |
Une classe Wrapper peut être utilisée avec une collection telle que ArrayList, etc. | Un type primitif n'est pas utilisé avec les collections. |
Résumé - Classe Wrapper vs Type Primitive en Java
Le langage Java fournit huit types de données primitifs. Parfois, il est nécessaire de convertir les types primitifs en objet et également de reconvertir les objets en primitifs. Les classes wrapper peuvent être utilisées pour accomplir cette tâche. La différence entre la classe wrapper et le type primitif en Java est que la classe wrapper est utilisée pour convertir un type primitif en objet et un objet en un type primitif tandis qu'un type primitif est un type de données prédéfini fourni par le langage de programmation Java.