Maison > Java > javaDidacticiel > Quelle est la différence entre « int » et « Integer » de Java ?

Quelle est la différence entre « int » et « Integer » de Java ?

DDD
Libérer: 2024-11-24 06:06:10
original
380 Les gens l'ont consulté

What's the Difference Between Java's `int` and `Integer`?

Explorer les différences entre Integer et int en Java

Dans le domaine de la programmation Java, comprendre la distinction entre les types primitifs et leur wrapper correspondant les cours sont cruciaux. Cet article examine les principales différences entre la primitive int et sa classe wrapper Integer.

int : La Primitive

int est un type primitif qui représente une valeur entière dans forme binaire. Il stocke directement la représentation binaire de l'entier souhaité. Par conséquent, en écrivant int n = 9 ; attribue directement la valeur 9 à la variable n.

Integer : la classe Wrapper

Integer, quant à elle, est une classe wrapper qui encapsule une valeur int. Il traite la valeur int comme un objet, ce qui lui permet d'être utilisé dans les situations où un objet est requis. Contrairement à int, les variables Integer stockent des références à des objets Integer.

Invocations de méthodes

La distinction entre int et Integer devient évidente lors de l'appel de méthodes. Puisque int est un type primitif, il n’a aucune méthode. Par conséquent, des tentatives comme int.parseInt("1") échoueront.

En revanche, Integer est une classe avec des méthodes. Integer.parseInt("1") est une expression valide qui appelle la méthode statique parseInt de la classe Integer, qui convertit la chaîne "1" en une valeur int.

Autoboxing et Unboxing

Introduit dans Java 5, l'autoboxing permet une conversion transparente entre les types primitifs et leurs classes wrapper. Cela signifie qu'une affectation telle que Integer n = 9 ; est automatiquement converti en objet wrapper correspondant. Des conversions similaires se produisent lors de l'appel de méthodes.

Implications pour l'utilisation

Les types primitifs sont généralement plus efficaces que les classes wrapper car ils évitent la surcharge de création d'objets et de gestion des références. Cependant, les classes wrapper fournissent des fonctionnalités supplémentaires, telles que la représentation nulle et la prise en charge des génériques.

En conclusion, comprendre les différences subtiles entre Integer et int est essentiel pour une programmation Java efficace. Déterminez attentivement si une classe primitive ou wrapper est appropriée à votre contexte spécifique afin d'optimiser les performances et de maintenir la clarté du code.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal