CodeGym /Cours /JAVA 25 SELF /Nombres entiers : type int, opérations avec le type int...

Nombres entiers : type int, opérations avec le type int

JAVA 25 SELF
Niveau 2, Leçon 1
Disponible

1. Explorer plus en détail le type int

Si vous voulez stocker dans des variables des nombres entiers, vous devez utiliser le type int.

int est l’abréviation de Integer (« entier » en anglais), ce qui laisse entendre que ce type permet de stocker des nombres entiers.

Les variables de type int peuvent stocker des entiers dans l’intervalle allant de -2 milliards à +2 milliards. Plus précisément, de -2 147 483 648 à 2 147 483 647.

Fait intéressant

Ces valeurs non rondes sont liées à l’architecture de la mémoire de l’ordinateur.

En Java, le type int occupe 4 octets de mémoire. Chaque octet de mémoire se compose de 8 bits. Chaque bit ne peut prendre que 2 valeurs — 0 ou 1. Une variable de type int contient 32 bits et peut prendre 4 294 967 296 valeurs.

La moitié de cet intervalle est réservée aux nombres négatifs, l’autre moitié aux nombres positifs. D’où l’intervalle de -2 147 483 648 à 2 147 483 647.

2. Création d’une variable de type int

Le type int est destiné au stockage de nombres entiers. Pour créer dans le code une variable capable de stocker des nombres entiers, utilisez une instruction de la forme :

int name;
Déclaration d’une variable de type int

Où name est le nom de la variable. Exemples :

Commande Description
int x;
Une variable entière x est créée
int count;
Une variable entière count est créée
int currentYear;
Une variable entière currentYear est créée

La casse des lettres a de l’importance : les instructions int color et int Color déclareront deux variables différentes.

En revanche, le compilateur ne comprendra pas du tout les instructions Int Color et INT COLOR et signalera une erreur. int est un mot réservé particulier désignant le type entier et s’écrit uniquement en minuscules.

3. Écriture abrégée de la création de variables

Si, à un endroit du programme, vous devez créer beaucoup de variables d’un même type, vous pouvez le faire en utilisant une écriture abrégée :

int name1, name2, name3;
Écriture abrégée de la création de plusieurs variables d’un même type

Exemples :

Commandes Écriture abrégée des mêmes commandes
int x;
int y;
int z;
int x, y, z;
int count;
int totalCount;
int count, totalCount;
int day;
int month;
int year;
int day, month, year;

4. Affectation de valeurs

Pour mettre une valeur dans une variable de type int, utilisez l’instruction :

name = value;
Affectation d’une valeur à une variable

La valeur peut être toute expression entière. Exemples :

Commande Remarque
int a;
a = 5;
int b;
b = 2*1000*1000*1000;
La variable contiendra la valeur « 2 milliards »
int c;
c = -10000000;
La variable contiendra la valeur « moins 10 millions »
int d;
d = 3000000000;
Ne se compilera pas, car 3 000 000 000 est supérieur à la valeur maximale du type int 2 147 483 647

5. Écriture abrégée de la création et de l’initialisation d’une variable

La création (déclaration) d’une variable et l’affectation d’une valeur peuvent s’écrire en une seule instruction. On procède le plus souvent ainsi, car une variable est généralement déclarée au moment où l’on a besoin d’enregistrer une valeur.

L’instruction ressemble à ceci :

int name = value;
Écriture abrégée de la création et de l’initialisation d’une variable

Exemples :

Commande Remarque
int a = 5;
int b = 2*1000*1000*1000;
La variable contiendra la valeur « 2 milliards »
int c = -10000000;
La variable contiendra la valeur « moins 10 millions »
int d = 3000000000;
Ne se compilera pas, car 3 000 000 000 est supérieur à la valeur maximale du type int : 2 147 483 647

On peut aussi déclarer plusieurs variables sur une seule ligne. L’instruction prend alors la forme suivante :

int name1 = value1, name2 = value2, name3 = value3;
Écriture abrégée de la création et de l’initialisation de plusieurs variables

Exemples :

Commande Remarque
int a = 5, b = 10, c = a + b;
a vaut 5, b vaut 10, c vaut 15

6. Calcul d’expressions entières

À droite de l’opérateur d’affectation (signe égal), on peut avoir n’importe quelle expression — une combinaison de nombres, de variables et des signes +, -, *, /.

On peut aussi utiliser des parenthèses ( ). En Java, comme en mathématiques, on commence par évaluer les expressions entre parenthèses, puis à l’extérieur. La multiplication et la division ont la même priorité, supérieure à celle de l’addition et de la soustraction.

Exemples :

Commande Remarque
int a = (2 + 2) * 2;
La variable prendra la valeur 8
int b = (6 - 3) / (9 - 6);
La variable prendra la valeur 1
int c = (-2) * (-3);
La variable prendra la valeur 6
int d = 3 / 0;
À l’exécution de cette instruction, une erreur se produira et le programme s’arrêtera.

Des variables peuvent également participer à l’expression :

int a = 1;			// La variable a vaudra 1
int b = 2;			// La variable b vaudra 2
int c = a * b + 2;	// La variable c vaudra 4

De plus, une même variable peut se trouver à la fois à gauche et à droite de l’opérateur d’affectation :

int x = 5;		// La variable x vaudra 5
x = x + 1;		// La variable x vaudra 6
x = x + 1;		// La variable x vaudra 7
x = x + 1;		// La variable x vaudra 8
x = x + 1;		// La variable x vaudra 9
x = x + 1;		// La variable x vaudra 10

En Java, le symbole = n’est pas un signe d’égalité, mais une instruction qui place dans la variable à gauche du signe = la valeur calculée de l’expression à droite du signe =.

7. Division des nombres entiers

En Java, la division d’un entier par un entier produit toujours un entier. Le reste de la division est tronqué. Autrement dit, la partie fractionnaire est ignorée.

Exemples :

Commande Résultat de la division Remarque
int a = 5 / 2;
2,5 La variable a vaudra 2
int b = 20 / 3;
6,6667 La variable b vaudra 6
int c = -6 / 5;
-1,2 La variable c vaudra -1
int d = 1 / 2;
0,5 La variable d vaudra 0

8. Reste de la division des entiers

Outre l’addition, la soustraction, la multiplication et la division, Java dispose aussi d’un opérateur de « reste de la division ». Il utilise le symbole pourcentage — %. Il s’agit du reste de la division d’un entier par un entier, et non de la partie fractionnaire.

Exemples :

Commande Résultat de la division Remarque
int a = 5 % 2;
2 et reste 1 La variable a vaudra 1
int b = 20 % 4;
5 et reste 0 La variable b vaudra 0
int c = 9 % 5;
1 et reste 4 La variable c vaudra 4
int d = 1 % 2;
0 et reste 1 La variable d vaudra 1

C’est un opérateur très utile et il est souvent employé. Par exemple, pour savoir si un nombre est pair ou non, il suffit de le diviser par 2 et de comparer le reste à zéro. Si le reste de la division est égal à zéro, le nombre est pair; s’il est égal à un, il est impair.

Cette vérification ressemble à ceci :

(a % 2) == 0

Où, comme vous l’avez deviné, a % 2 calcule le reste de la division par 2 (c.-à-d. 0 ou 1), et == est utilisé pour la comparaison avec zéro.

9. Incrément et décrément

En programmation, on doit très souvent augmenter ou diminuer une variable d’une unité. Pour ces actions, Java propose des opérateurs dédiés :

L’opérateur d’incrément (augmentation d’une unité) s’écrit ainsi :

a++;
Augmentation d’une unité

Cette instruction fait la même chose que l’instruction a = a + 1; — elle augmente la variable a d’une unité.

L’opérateur de décrément (diminution d’une unité) s’écrit ainsi :

a--;
Diminution d’une unité

Cette instruction fait la même chose que l’instruction a = a - 1; — elle diminue la variable a d’une unité.

Exemple 1

int x = 5;		// La variable x vaudra 5
x++;			// La variable x vaudra 6
x++;			// La variable x vaudra 7
x++;			// La variable x vaudra 8
x++;			// La variable x vaudra 9
x++;			// La variable x vaudra 10

Exemple 2

int x = 5;		// La variable x vaudra 5
x--;			// La variable x vaudra 4
x--;			// La variable x vaudra 3
x--;			// La variable x vaudra 2
x--;			// La variable x vaudra 1
x--;			// La variable x vaudra 0
x--;			// La variable x vaudra -1
1
Mission
JAVA 25 SELF, niveau 2, leçon 1
Bloqué
Âge du personnage principal 🦸‍♂️
Âge du personnage principal 🦸‍♂️
1
Mission
JAVA 25 SELF, niveau 2, leçon 1
Bloqué
Résultats du jeu de dés 🎲
Résultats du jeu de dés 🎲
1
Mission
JAVA 25 SELF, niveau 2, leçon 1
Bloqué
Répartition des prix entre les équipes 🎁
Répartition des prix entre les équipes 🎁
1
Mission
JAVA 25 SELF, niveau 2, leçon 1
Bloqué
Modification du niveau de vie dans le jeu 📈
Modification du niveau de vie dans le jeu 📈
Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION