CodeGym /Corsi /JAVA 25 SELF /Numeri interi: tipo int, operazioni con il tipo int

Numeri interi: tipo int, operazioni con il tipo int

JAVA 25 SELF
Livello 2, Lezione 1
Disponibile

1. Esaminiamo più da vicino il tipo int

Se vuoi memorizzare nelle variabili numeri interi, devi usare il tipo int.

int è l’abbreviazione di Integer («intero» in inglese), il che suggerisce che questo tipo consente di memorizzare numeri interi.

Le variabili di tipo int possono memorizzare numeri interi nell’intervallo da -2 miliardi a +2 miliardi. Oppure, per essere più precisi, da -2.147.483.648 a 2.147.483.647.

Fatto interessante

Questi valori non tondi sono legati all’organizzazione della memoria del computer.

In Java per il tipo int sono riservati 4 byte di memoria. Ogni byte di memoria è composto da 8 bit. Ogni bit può assumere solo 2 valori — 0 oppure 1. Una variabile di tipo int contiene 32 bit e può assumere 4.294.967.296 valori.

Metà di questo intervallo è stata destinata ai numeri negativi e l’altra metà a quelli positivi. Ecco perché risulta proprio da -2.147.483.648 a 2.147.483.647.

2. Creazione di una variabile di tipo int

Il tipo int è destinato a memorizzare numeri interi. Per creare nel codice una variabile in grado di memorizzare numeri interi, usa un’istruzione del tipo:

int imya;
Dichiarazione di una variabile di tipo int

Dove imya è il nome della variabile. Esempi:

Istruzione Descrizione
int x;
Viene creata la variabile intera x
int count;
Viene creata la variabile intera count
int currentYear;
Viene creata la variabile intera currentYear

La differenza tra maiuscole e minuscole è significativa: le istruzioni int color e int Color dichiarano due variabili diverse.

Le istruzioni Int Color e INT COLOR non verranno comprese dal compilatore, che segnalerà un errore. int è una parola speciale che indica il tipo intero e si scrive solo in minuscolo.

3. Sintassi abbreviata per creare variabili

Se in un punto del programma è necessario creare molte variabili dello stesso tipo, è possibile farlo usando una forma abbreviata:

int imya1, imya2, imya3;
Forma abbreviata per creare più variabili dello stesso tipo

Esempi:

Istruzioni Forma abbreviata delle stesse istruzioni
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. Assegnazione di valori

Per assegnare un valore a una variabile di tipo int, usa l’istruzione:

imya = znachenie;
Assegnazione di un valore a una variabile

Dove il valore può essere qualsiasi espressione intera. Esempi:

Istruzione Nota
int a;
a = 5;
int b;
b = 2*1000*1000*1000;
La variabile conterrà il valore «2 miliardi»
int c;
c = -10000000;
La variabile conterrà il valore «meno 10 milioni»
int d;
d = 3000000000;
Non compila, poiché 3.000.000.000 è maggiore del valore massimo possibile per il tipo int 2.147.483.647

5. Sintassi abbreviata per creazione e inizializzazione di una variabile

La creazione (dichiarazione) di una variabile e l’assegnazione di un valore possono essere scritte in un’unica istruzione. Nella maggior parte dei casi si fa proprio così, poiché una variabile viene solitamente dichiarata quando sorge la necessità di salvare un certo valore.

L’istruzione appare così:

int imya = znachenie;
Forma abbreviata per creare e inizializzare una variabile

Esempi:

Istruzione Nota
int a = 5;
int b = 2*1000*1000*1000;
La variabile conterrà il valore «2 miliardi»
int c = -10000000;
La variabile conterrà il valore «meno 10 milioni»
int d = 3000000000;
Non compila, poiché 3.000.000.000 è maggiore del valore massimo possibile per il tipo int: 2.147.483.647

È possibile dichiarare anche più variabili in una sola riga. L’istruzione avrà la forma:

int imya1 = znachenie1, imya2 = znachenie2, imya3 = znachenie3;
Forma abbreviata per creare e inizializzare più variabili

Esempi:

Istruzione Nota
int a = 5, b = 10, c = a + b;
a è uguale a 5, b è uguale a 10, c è uguale a 15

6. Valutazione di espressioni intere

A destra dell’operatore di assegnazione (segno di uguale) può esserci qualsiasi espressione — una combinazione di numeri, variabili e segni +, -, *, /.

Si possono usare anche le parentesi ( ). In Java, come in matematica, prima si valutano le espressioni tra parentesi e poi — quelle fuori. Moltiplicazione e divisione hanno la stessa precedenza, superiore a quella di addizione e sottrazione.

Esempi:

Istruzione Nota
int a = (2 + 2) * 2;
La variabile conterrà il valore 8
int b = (6 - 3) / (9 - 6);
La variabile conterrà il valore 1
int c = (-2) * (-3);
La variabile conterrà il valore 6
int d = 3 / 0;
Eseguendo questa istruzione si verificherà un errore e il programma terminerà.

Nelle espressioni possono partecipare anche variabili:

int a = 1;			// La variabile a conterrà il valore 1
int b = 2;			// La variabile b conterrà il valore 2
int c = a * b + 2;	// La variabile c conterrà il valore 4

Inoltre, la stessa variabile può trovarsi contemporaneamente sia a sinistra sia a destra dell’operatore di assegnazione:

int x = 5;		// La variabile x conterrà il valore 5
x = x + 1;		// La variabile x conterrà il valore 6
x = x + 1;		// La variabile x conterrà il valore 7
x = x + 1;		// La variabile x conterrà il valore 8
x = x + 1;		// La variabile x conterrà il valore 9
x = x + 1;		// La variabile x conterrà il valore 10

Il punto è che nel linguaggio Java il simbolo = non indica l’uguaglianza, ma è un’istruzione che assegna alla variabile a sinistra del segno = il valore calcolato dell’espressione a destra del segno =.

7. Divisione tra numeri interi

In Java, dividendo un numero intero per un numero intero si ottiene sempre un numero intero. Il resto della divisione viene scartato. In altre parole, viene scartata la parte frazionaria.

Esempi:

Istruzione Risultato della divisione Nota
int a = 5 / 2;
2,5 Nella variabile a ci sarà il valore 2
int b = 20 / 3;
6,6667 Nella variabile b ci sarà il valore 6
int c = -6 / 5;
-1,2 Nella variabile c ci sarà il valore -1
int d = 1 / 2;
0,5 Nella variabile d ci sarà il valore 0

8. Resto della divisione tra interi

Oltre a addizione, sottrazione, moltiplicazione e divisione, per i numeri interi in Java esiste anche l’operatore «resto della divisione». Si usa il simbolo percentuale — %. Si tratta proprio del resto della divisione di un intero per un intero, non della parte frazionaria.

Esempi:

Istruzione Risultato della divisione Nota
int a = 5 % 2;
2 e resto 1 Nella variabile a ci sarà il valore 1
int b = 20 % 4;
5 e resto 0 Nella variabile b ci sarà il valore 0
int c = 9 % 5;
1 e resto 4 Nella variabile c ci sarà il valore 4
int d = 1 % 2;
0 e resto 1 Nella variabile d ci sarà il valore 1

È un operatore molto utile e viene usato abbastanza spesso. Per esempio, per sapere se un numero è pari o dispari, basta dividerlo per 2 e confrontare il resto con zero. Se il resto è uguale a zero, il numero è pari; se è uguale a uno, è dispari.

Il controllo appare così:

(a % 2) == 0

Dove, come avrai già intuito, a % 2 è l’ottenimento del resto della divisione per 2 (cioè 0 oppure 1), mentre == viene usato per confrontarlo con zero.

9. Incremento e decremento

Nella programmazione capita molto spesso di aumentare o diminuire una variabile di un’unità. Per queste operazioni in Java esistono istruzioni specifiche:

L’operatore di incremento (aumento di uno) è il seguente:

a++;
Incremento di uno

Questa istruzione fa la stessa cosa dell’istruzione a = a + 1; — aumenta la variabile a di uno.

L’operatore di decremento (diminuzione di uno) è il seguente:

a--;
Decremento di uno

Questa istruzione fa la stessa cosa dell’istruzione a = a - 1; — diminuisce la variabile a di uno.

Esempio 1

int x = 5;		// La variabile x conterrà il valore 5
x++;			// La variabile x conterrà il valore 6
x++;			// La variabile x conterrà il valore 7
x++;			// La variabile x conterrà il valore 8
x++;			// La variabile x conterrà il valore 9
x++;			// La variabile x conterrà il valore 10

Esempio 2

int x = 5;		// La variabile x conterrà il valore 5
x--;			// La variabile x conterrà il valore 4
x--;			// La variabile x conterrà il valore 3
x--;			// La variabile x conterrà il valore 2
x--;			// La variabile x conterrà il valore 1
x--;			// La variabile x conterrà il valore 0
x--;			// La variabile x conterrà il valore -1
1
Compito
JAVA 25 SELF, livello 2, lezione 1
Bloccato
Età del protagonista 🦸‍♂️
Età del protagonista 🦸‍♂️
1
Compito
JAVA 25 SELF, livello 2, lezione 1
Bloccato
Risultati del gioco dei dadi 🎲
Risultati del gioco dei dadi 🎲
1
Compito
JAVA 25 SELF, livello 2, lezione 1
Bloccato
Distribuzione dei premi tra le squadre 🎁
Distribuzione dei premi tra le squadre 🎁
1
Compito
JAVA 25 SELF, livello 2, lezione 1
Bloccato
Modifica del livello di salute nel gioco 📈
Modifica del livello di salute nel gioco 📈
Commenti
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION