Gli operatori Java AND e OR: come funzionano

Gli operatori logici AND e OR in Java servono a verificare la correttezza di due requisiti. Entrambe le funzioni si comportano in modo simile, ma differiscono per alcuni dettagli. Ti spieghiamo il funzionamento degli operatori OR e AND in Java con alcuni semplici esempi.

AND e OR in Java

Gli operatori Java sono uno strumento importante per lavorare con questo linguaggio di programmazione. Esistono diverse categorie di operatori, che permettono di svolgere compiti diversi. Due strumenti che ti saranno particolarmente utili per imparare a programmare in Java sono AND e OR. Entrambi rientrano nella categoria degli operatori e sono utilizzati per verificare la correttezza di uno stato ipotetico. A tal fine danno come risposta un valore booleano. Il valore è “true” se l’espressione è corretta oppure “false” se è errata.

L’operatore AND in Java esamina due stati ed emette il valore “true” solo se entrambe le espressioni sono corrette. In caso contrario, la risposta è “false”. Per esprimere questo operatore si utilizza la dicitura “&&”. Anche l’operatore OR in Java esamina due stati ed emette il valore “true”, ma a condizione che almeno una delle due espressioni sia corretta. Solo se entrambe le espressioni sono errate la risposta è “false”. Per indicare questo operatore si utilizza la dicitura “||”.

La sintassi dei due operatori è molto simile e si presenta così:

espressione1 operatore espressione2
java

Nelle parti seguenti ti spieghiamo come utilizzare gli operatori AND e OR in Java con alcuni esempi pratici.

Il tuo web hosting come mai prima d'ora
  • Certificato SSL e protezione DDoS
  • Velocità, flessibilità e scalabilità
  • Dominio e consulente personale
  • 1 anno gratis del gestionale di fatturazione elettronica FlexTax

L’operatore AND in Java

In Java, l’operatore AND serve a controllare se due espressioni sono vere. La struttura è la seguente:

espressione1 && espressione2
java

Solo se entrambi i requisiti sono veri si ottiene la risposta “true”. Se una delle due espressioni è falsa o se entrambe non sono vere, la risposta dell’operatore è “false”.

Nel nostro primo esempio forniamo al sistema due semplici espressioni e utilizziamo il comando Java System.out.println per ordinare al sistema di emettere il valore booleano corrispondente. Il comando si presenta così:

public class Main {
	public static void main(String[] args) {
		int x = 3;
		System.out.println(x > 1 && x < 7);
	}
}
java

Per prima cosa, il sistema controlla se il valore 3 è maggiore di 1. Essendo vero, il sistema verifica quindi la correttezza dell’espressione “3 < 7”. Anche questo è vero, quindi entrambe le espressioni sono corrette e otteniamo il risultato “true”.

A questo punto possiamo vedere cosa succede se una delle espressioni è vera e l’altra no. A tal fine modifichiamo leggermente il nostro esempio:

public class Main {
	public static void main(String [] args) {
		int x = 3;
		System.out.println(x > 1 && x > 7);
	}
}
java

Anche in questo caso il sistema controlla la prima espressione e stabilisce che è corretta. La seconda espressione, invece, non lo è. Poiché entrambi i requisiti devono essere soddisfatti, il risultato è “false”.

Nel nostro terzo esempio, la verifica è ancora più breve. Poiché già il primo requisito non è soddisfatto, il sistema non prende neppure in considerazione il secondo dato. Infatti, il valore può essere soltanto “false”:

public class Main {
	public static void main(String [] args) {
		int x = 3;
		System.out.println(x > 3 && x < 7);
	}
}
java

L’operatore OR in Java

Anche l’operatore OR in Java serve a controllare due requisiti. La sua struttura è la seguente:

espressione1 || espressione2
java

Al contrario dell’operatore AND in Java, per l’operatore OR è fondamentale che almeno uno dei due requisiti sia soddisfatto. In questo caso il risultato è la risposta “true”. La stessa risposta si ottiene anche quando entrambi i requisiti sono soddisfatti. L’operatore risponde con “false” solo se nessuno dei due requisiti è vero. A seguire trovi alcuni semplici esempi per capire meglio il funzionamento.

Nel primo caso, cambiamo semplicemente l’operatore && usato nel primo esempio sostituendolo con ||. L’esempio si presenta quindi così:

public class Main {
	public static void main(String [] args) {
		int x = 3;
		System.out.println(x > 1 || x < 7);
	}
}
java

Come con l’operatore AND, in questo caso il risultato è “true”. Poiché già la prima espressione è vera, il requisito è soddisfatto. Le differenze fra AND e OR in Java diventano più chiare osservando l’esempio seguente.

public class Main {
	public static void main(String [] args) {
		int x = 3;
		System.out.println(x > 1 || x > 7);
	}
}
java

La prima espressione indicata è vera, perché 3 è effettivamente maggiore di 1. La seconda espressione invece non è vera, perché 3 non è maggiore di 7. Tuttavia, poiché almeno una delle due espressioni è vera, il sistema risponde comunque con “true”. L’affermazione errata nella seconda espressione non è rilevante.

Il sistema dà la risposta “false” soltanto se nessuno dei due requisiti è soddisfatto. L’esempio seguente descrive questa situazione:

public class Main {
	public static void main(String [] args) {
		int x = 3;
		System.out.println(x > 3 || x > 7);
	}
}
java

Il sistema controlla la prima espressione e stabilisce che è falsa. Quindi prende in considerazione la seconda espressione. Se fosse corretta, la risposta sarebbe nuovamente “true”. Tuttavia, poiché entrambe le espressioni sono false, la risposta che otteniamo è “false”.

Hai trovato questo articolo utile?
Per offrirti una migliore esperienza di navigazione online questo sito web usa dei cookie, propri e di terze parti. Continuando a navigare sul sito acconsenti all’utilizzo dei cookie. Scopri di più sull’uso dei cookie e sulla possibilità di modificarne le impostazioni o negare il consenso.
Page top