Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Operatore Ternario | Struttura Profonda di Java
Java Avanzato

Scorri per mostrare il menu

book
Operatore Ternario

Come possiamo abbreviare un'istruzione if-else?

L'istruzione if potrebbe non apparire sempre elegante, ma Java offre un modo più rapido e conveniente per verificare le condizioni. Si chiama operatore ternario e ha la seguente sintassi:

condition ? expression_for_true : expression_for_false

Per prima cosa, impostiamo una condizione, ad esempio 10 > 5, e poi inseriamo un punto interrogativo ? dopo di essa. Se la condizione viene valutata come true, si passa al blocco vero, ad esempio System.out.println("That's true");. Se la condizione viene valutata come false, si passa al blocco falso, dove potremmo avere qualcosa come System.out.println("That's not true");.

Analizziamo un esempio più pratico:

Main.java

Main.java

copy
12345678
package com.example; public class Main { public static void main(String[] args) { System.out.println(10 > 5 ? "That's true" : "That's false"); System.out.println(5 > 6 ? "That's true" : "That's false"); } }

Avrai notato che abbiamo utilizzato l'operatore ternario all'interno dell'istruzione System.out.println();. Questo è lo scopo principale dell'operatore ternario: può essere utilizzato all'interno delle istruzioni di output per ridurre significativamente la quantità di codice.

Possiamo anche utilizzare l'operatore ternario durante l'inizializzazione o la restituzione di valori. Imparerai di più sulla restituzione dei valori nella prossima sezione quando studierai i metodi.

Esempio di utilizzo dell'operatore ternario durante l'inizializzazione di un valore:

Main.java

Main.java

copy
12345678910
package com.example; public class Main { public static void main(String[] args) { final int a = 10 > 2 ? 5 : 2; final int b = 10 < 2 ? 5 : 2; System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }

Di seguito è riportato un esempio di codice in cui l'operatore ternario viene sostituito con una normale istruzione if per aiutarti a comprendere meglio il suo funzionamento:

Main.java

Main.java

copy
1234567891011121314151617181920
package com.example; public class Main { public static void main(String[] args) { int a = 0; int b = 0; if (10 > 2) { a = 5; } else { a = 2; } if (10 < 2) { b = 5; } else { b = 2; } System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }

Il risultato è lo stesso, ma si può notare quanto spazio si risparmia utilizzando l'operatore ternario.

Compito

Swipe to start coding

  1. Scrivere un codice che stampi "The string contains Florida" se la stringa contiene la parola Florida, oppure "Florida is not found" se non la contiene.

  2. Utilizzare l'operatore ternario per esercitarsi con esso.

Soluzione

solution.java

solution.java

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 1. Capitolo 6
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

close

Awesome!

Completion rate improved to 2.63

book
Operatore Ternario

Come possiamo abbreviare un'istruzione if-else?

L'istruzione if potrebbe non apparire sempre elegante, ma Java offre un modo più rapido e conveniente per verificare le condizioni. Si chiama operatore ternario e ha la seguente sintassi:

condition ? expression_for_true : expression_for_false

Per prima cosa, impostiamo una condizione, ad esempio 10 > 5, e poi inseriamo un punto interrogativo ? dopo di essa. Se la condizione viene valutata come true, si passa al blocco vero, ad esempio System.out.println("That's true");. Se la condizione viene valutata come false, si passa al blocco falso, dove potremmo avere qualcosa come System.out.println("That's not true");.

Analizziamo un esempio più pratico:

Main.java

Main.java

copy
12345678
package com.example; public class Main { public static void main(String[] args) { System.out.println(10 > 5 ? "That's true" : "That's false"); System.out.println(5 > 6 ? "That's true" : "That's false"); } }

Avrai notato che abbiamo utilizzato l'operatore ternario all'interno dell'istruzione System.out.println();. Questo è lo scopo principale dell'operatore ternario: può essere utilizzato all'interno delle istruzioni di output per ridurre significativamente la quantità di codice.

Possiamo anche utilizzare l'operatore ternario durante l'inizializzazione o la restituzione di valori. Imparerai di più sulla restituzione dei valori nella prossima sezione quando studierai i metodi.

Esempio di utilizzo dell'operatore ternario durante l'inizializzazione di un valore:

Main.java

Main.java

copy
12345678910
package com.example; public class Main { public static void main(String[] args) { final int a = 10 > 2 ? 5 : 2; final int b = 10 < 2 ? 5 : 2; System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }

Di seguito è riportato un esempio di codice in cui l'operatore ternario viene sostituito con una normale istruzione if per aiutarti a comprendere meglio il suo funzionamento:

Main.java

Main.java

copy
1234567891011121314151617181920
package com.example; public class Main { public static void main(String[] args) { int a = 0; int b = 0; if (10 > 2) { a = 5; } else { a = 2; } if (10 < 2) { b = 5; } else { b = 2; } System.out.println("Variable 'a' has value: " + a); System.out.println("Variable 'b' has value: " + b); } }

Il risultato è lo stesso, ma si può notare quanto spazio si risparmia utilizzando l'operatore ternario.

Compito

Swipe to start coding

  1. Scrivere un codice che stampi "The string contains Florida" se la stringa contiene la parola Florida, oppure "Florida is not found" se non la contiene.

  2. Utilizzare l'operatore ternario per esercitarsi con esso.

Soluzione

solution.java

solution.java

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

close

Awesome!

Completion rate improved to 2.63

Scorri per mostrare il menu

some-alt