Java - Operatori di Base

Benvenuti, futuri programmatori Java! Oggi, entreremo nel mondo affascinante degli operatori Java. Non preoccupatevi se non avete mai scritto una riga di codice prima – inizieremo dall'inizio e lavoreremo fino alla fine. Alla fine di questa lezione, manipolerete i dati come un professionista!

Java - Basic Operators

Cos'sono gli Operatori?

Prima di iniziare, diamo un'occhiata a cosa sono gli operatori. Nel programming, gli operatori sono simboli speciali che instradano il computer a eseguire manipolazioni matematiche o logiche specifiche. Pensateli come i verbi in una frase – sono quelli che prendono l'azione!

Operatori Aritmetici di Java

Iniziamo con gli operatori più familiari – gli operatori aritmetici. Questi sono quelli che avete usato sin da quando andavate a scuola!

Addizione (+)

int mele = 5;
int arance = 3;
int fruttaTotale = mele + arance;
System.out.println("Frutta totale: " + fruttaTotale);

Questo codice produrrà: Frutta totale: 8

Qui, stiamo usando l'operatore + per aggiungere mele e arance. (Visto? Nel programming, possiamo aggiungere mele e arance!)

Sottrazione (-)

int denaroIniziale = 100;
int denaroSpeso = 25;
int denaroRimasto = denaroIniziale - denaroSpeso;
System.out.println("Denaro rimasto: €" + denaroRimasto);

Output: Denaro rimasto: €75

L'operatore - sottrae un valore da un altro.

Moltiplicazione (*)

int prezzoWidget = 5;
int quantitaWidget = 7;
int costoTotale = prezzoWidget * quantitaWidget;
System.out.println("Costo totale: €" + costoTotale);

Output: Costo totale: €35

L'operatore * moltiplica due valori.

Divisione (/)

int fetteDiPizza = 8;
int persone = 3;
int fettePerPersona = fetteDiPizza / persone;
System.out.println("Fette per persona: " + fettePerPersona);

Output: Fette per persona: 2

L'operatore / divide uno valore per un altro. Notate che quando si dividono interi, Java arrotonda verso il basso al numero intero più vicino.

Modulo (%)

int biscottiRimasti = 10;
int personeCheVoglionoBiscotti = 3;
int biscottiRimasti = biscottiRimasti % personeCheVoglionoBiscotti;
System.out.println("Biscotti rimasti: " + biscottiRimasti);

Output: Biscotti rimasti: 1

L'operatore % restituisce il resto della divisione. È molto utile per determinare se i numeri sono pari o dispari, o per scorrere attraverso una gamma di valori.

Operatori Relazionali di Java

Gli operatori relazionali confrontano due valori e restituiscono un risultato booleano (vero o falso). Sono essenziali per prendere decisioni nel vostro codice.

Uguale a (==)

int età = 18;
boolean puòVotare = (età == 18);
System.out.println("Può questa persona votare? " + puòVotare);

Output: Può questa persona votare? true

L'operatore == verifica se due valori sono uguali.

Non uguale a (!=)

String tempo = "soleggiato";
boolean rimaniDentro = (tempo != "soleggiato");
System.out.println("Dovrei rimanere dentro? " + rimaniDentro);

Output: Dovrei rimanere dentro? false

L'operatore != verifica se due valori non sono uguali.

Maggiore di (>) e Minore di (<)

int punteggioGiocatore = 85;
int punteggioMassimo = 90;
boolean nuovoPunteggioMassimo = (punteggioGiocatore > punteggioMassimo);
System.out.println("Nuovo punteggio massimo raggiunto: " + nuovoPunteggioMassimo);

Output: Nuovo punteggio massimo raggiunto: false

L'operatore > verifica se il valore sinistro è maggiore del destro, mentre < fa l'opposto.

Maggiore o uguale a (>=) e Minore o uguale a (<=)

int etàRichiesta = 18;
int etàPersona = 18;
boolean puòEntrare = (etàPersona >= etàRichiesta);
System.out.println("Può la persona entrare? " + puòEntrare);

Output: Può la persona entrare? true

Questi operatori verificano se un valore è maggiore/menor o uguale a un altro valore.

Operatori Logici di Java

Gli operatori logici permettono di combinare più condizioni.

E (&&)

boolean haBiglietto = true;
boolean haID = true;
boolean puòPartecipareConcerto = haBiglietto && haID;
System.out.println("Può partecipare al concerto: " + puòPartecipareConcerto);

Output: Può partecipare al concerto: true

L'operatore && restituisce vero solo se entrambe le condizioni sono vere.

O (||)

boolean èWeekend = true;
boolean èFestivo = false;
boolean puòDormire = èWeekend || èFestivo;
System.out.println("Può dormire: " + puòDormire);

Output: Può dormire: true

L'operatore || restituisce vero se almeno una condizione è vera.

NON (!)

boolean staPiovendo = false;
boolean dovrebbePrendereOmbrello = !staPiovendo;
System.out.println("Dovrebbe prendere ombrello: " + dovrebbePrendereOmbrello);

Output: Dovrebbe prendere ombrello: true

L'operatore ! inverte un valore booleano.

Gli Operatori di Assegnazione

Abbiamo usato l'operatore di assegnazione di base = in tutti i nostri esempi. Ma Java ha alcuni operatori accorciati che combinano l'assegnazione con altre operazioni.

Addizione con assegnazione (+=)

int punteggio = 0;
punteggio += 10; // Questo è equivalente a: punteggio = punteggio + 10;
System.out.println("Punteggio corrente: " + punteggio);

Output: Punteggio corrente: 10

Altri operatori di assegnazione

Java ha anche -=, *=, /= e %= che lavorano allo stesso modo.

Precedenza e Associatività degli Operatori di Java

Proprio come nella matematica, gli operatori di Java hanno un ordine di precedenza. Per esempio:

int risultato = 5 + 3 * 2;
System.out.println("Risultato: " + risultato);

Output: Risultato: 11

La moltiplicazione avviene prima dell'addizione, proprio come nella matematica normale.

Ecco una tabella semplificata della precedenza degli operatori (dall'alto al basso):

Precedenza Operatore
1 * / %
2 + -
3 < > <= >=
4 == !=
5 &&
6
7 =

Ricorda, puoi sempre usare le parentesi per specificare esplicitamente l'ordine delle operazioni:

int risultato = (5 + 3) * 2;
System.out.println("Risultato con parentesi: " + risultato);

Output: Risultato con parentesi: 16

Ed eccoci qui! Avete appena fatto i vostri primi passi nel mondo degli operatori di Java. Questi piccoli simboli possono sembrare semplici, ma sono i mattoni di tutte le cose meravigliose che creerete con Java. Continuate a praticare, e presto combinerete questi operatori per risolvere problemi complessi e costruire programmi incredibili. Buon coding!

Credits: Image by storyset