Maison >Java >javaDidacticiel >Java int vs Integer : quelle est la différence ?

Java int vs Integer : quelle est la différence ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-07 05:00:17839parcourir

Java int vs. Integer: What's the Difference?

Comprendre la distinction entre entier et int en Java

Le langage de programmation Java propose deux options pour représenter les entiers : le type primitif int et le wrapper d'objet classe Entier. Bien que les deux stockent des valeurs numériques, leur nature et leur utilisation diffèrent considérablement.

int : type primitif

int est un type primitif, ce qui signifie que ses variables contiennent directement des valeurs entières. . L'attribution d'une valeur à une variable int stocke la représentation binaire de l'entier en mémoire. Par exemple, le code suivant attribue la valeur 9 à une variable int :

int n = 9;

Les types primitifs n'ont pas de méthodes ou de propriétés, donc les expressions comme int.parseInt("1") ne sont pas valides.

Integer : classe Wrapper d'objet

Integer, en revanche, est un wrapper d'objet classe. Ses variables stockent des références à des objets Integer qui encapsulent une valeur entière. Semblable à d’autres types d’objets, Integer possède des méthodes et des propriétés. Lors de l'attribution d'une valeur à une variable Integer, un nouvel objet Integer est créé et la référence à celui-ci est stockée :

Integer n = 9;

Invocation de méthode

Les invocations de méthode peuvent être fait sur la classe Integer, mais pas sur le type primitif int. Par exemple, vous pouvez utiliser la méthode parseInt pour convertir une chaîne en entier :

Integer.parseInt("1");

Autoboxing et Unboxing

Depuis Java 5, l'autoboxing et le unboxing permettent une conversion entre les types primitifs et leurs classes wrapper. L'affectation suivante est équivalente à l'exemple précédent :

int n = Integer.parseInt("1"); // Autoboxing

De même, le code suivant récupère la valeur entière d'un objet Integer :

int n = Integer.valueOf(9).intValue(); // Unboxing

Résumé

int et Integer sont des représentations différentes d'entiers en Java. int est un type primitif qui stocke directement les valeurs entières, tandis que Integer est une classe wrapper d'objet qui encapsule les valeurs entières en tant qu'objets. Integer fournit des méthodes et des propriétés, contrairement à int.

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:
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