I Java, betingede operatører sjekk tilstanden og bestemmer ønsket resultat på grunnlag av begge forholdene. I denne delen vil vi diskutere betinget operatør i Java.
Typer betinget operatør
Det er tre typer betingede operatør i Java :
- Betinget OG
- Betinget ELLER
- Ternær operatør
Operatør | Symbol |
---|---|
Betinget eller logisk OG | && |
Betinget eller logisk ELLER | || |
Ternær operatør | ?: |
Betinget OG
Operatoren brukes mellom to boolske uttrykk. Det er merket med de to OG-operatorene (&&). Den returnerer sann hvis og bare hvis begge uttrykkene er sanne, ellers returnerer den usann.
Uttrykk 1 | Uttrykk 2 | Uttrykk1 && Uttrykk2 |
---|---|---|
ekte | Falsk | Falsk |
Falsk | ekte | Falsk |
Falsk | Falsk | Falsk |
ekte | ekte | ekte |
Betinget ELLER
Operatoren brukes mellom to boolske uttrykk. Det er angitt med to-ELLER-operatoren (||). Det returnerer sant hvis noe av uttrykket er sant, ellers returnerer det usant.
konverter strengdato
Uttrykk 1 | Uttrykk 2 | Uttrykk1 || Uttrykk 2 |
---|---|---|
ekte | ekte | ekte |
ekte | Falsk | ekte |
Falsk | ekte | ekte |
Falsk | Falsk | Falsk |
La oss lage et Java-program og bruke den betingede operatoren.
ConditionalOperatorExample.java
public class ConditionalOperatorExample { public static void main(String args[]) y<z); system.out.println((xz) && x<y); } < pre> <p> <strong>Output</strong> </p> <pre> true false </pre> <h3>Ternary Operator</h3> <p>The meaning of <strong>ternary</strong> is composed of three parts. The <strong>ternary operator (? :)</strong> consists of three operands. It is used to evaluate Boolean expressions. The operator decides which value will be assigned to the variable. It is the only conditional operator that accepts three operands. It can be used instead of the if-else statement. It makes the code much more easy, readable, and shorter.</p> <h4>Note: Every code using an if-else statement cannot be replaced with a ternary operator.</h4> <p> <strong>Syntax:</strong> </p> <pre> variable = (condition) ? expression1 : expression2 </pre> <p>The above statement states that if the condition returns <strong>true, expression1</strong> gets executed, else the <strong>expression2</strong> gets executed and the final result stored in a variable.</p> <img src="//techcodeview.com/img/java-tutorial/89/conditional-operator-java.webp" alt="Conditional Operator in Java"> <p>Let's understand the ternary operator through the flowchart.</p> <img src="//techcodeview.com/img/java-tutorial/89/conditional-operator-java-2.webp" alt="Conditional Operator in Java"> <p> <strong>TernaryOperatorExample.java</strong> </p> <pre> public class TernaryOperatorExample { public static void main(String args[]) { int x, y; x = 20; y = (x == 1) ? 61: 90; System.out.println('Value of y is: ' + y); y = (x == 20) ? 61: 90; System.out.println('Value of y is: ' + y); } } </pre> <p> <strong>Output</strong> </p> <pre> Value of y is: 90 Value of y is: 61 </pre> <p>Let's see another example that evaluates the largest of three numbers using the ternary operator.</p> <p> <strong>LargestNumberExample.java</strong> </p> <pre> public class LargestNumberExample { public static void main(String args[]) { int x=69; int y=89; int z=79; int largestNumber= (x > y) ? (x > z ? x : z) : (y > z ? y : z); System.out.println('The largest numbers is: '+largestNumber); } } </pre> <p> <strong>Output</strong> </p> <pre> The largest number is: 89 </pre> <p>In the above program, we have taken three variables x, y, and z having the values 69, 89, and 79, respectively. The expression <strong>(x > y) ? (x > z ? x : z) : (y > z ? y : z)</strong> evaluates the largest number among three numbers and store the final result in the variable largestNumber. Let's understand the execution order of the expression.</p> <img src="//techcodeview.com/img/java-tutorial/89/conditional-operator-java-3.webp" alt="Conditional Operator in Java"> <p>First, it checks the expression <strong>(x > y)</strong> . If it returns true the expression <strong>(x > z ? x : z)</strong> gets executed, else the expression <strong>(y > z ? y : z)</strong> gets executed.</p> <p>When the expression <strong>(x > z ? x : z)</strong> gets executed, it further checks the condition <strong>x > z</strong> . If the condition returns true the value of x is returned, else the value of z is returned.</p> <p>When the expression <strong>(y > z ? y : z)</strong> gets executed it further checks the condition <strong>y > z</strong> . If the condition returns true the value of y is returned, else the value of z is returned.</p> <p>Therefore, we get the largest of three numbers using the ternary operator.</p> <hr></z);>
Ternær operatør
Meningen med ternær er sammensatt av tre deler. De ternær operatør (? :) består av tre operander. Den brukes til å evaluere boolske uttrykk. Operatøren bestemmer hvilken verdi som skal tildeles variabelen. Det er den eneste betingede operatøren som godtar tre operander. Den kan brukes i stedet for if-else-setningen. Det gjør koden mye enklere, mer lesbar og kortere.
Merk: Hver kode som bruker en if-else-setning kan ikke erstattes med en ternær operator.
Syntaks:
variable = (condition) ? expression1 : expression2
Ovenstående uttalelse sier at hvis tilstanden kommer tilbake sant, uttrykk1 blir henrettet, ellers uttrykk2 blir utført og det endelige resultatet lagret i en variabel.
La oss forstå den ternære operatøren gjennom flytskjemaet.
TernaryOperatorExample.java
public class TernaryOperatorExample { public static void main(String args[]) { int x, y; x = 20; y = (x == 1) ? 61: 90; System.out.println('Value of y is: ' + y); y = (x == 20) ? 61: 90; System.out.println('Value of y is: ' + y); } }
Produksjon
polymorfisme
Value of y is: 90 Value of y is: 61
La oss se et annet eksempel som evaluerer det største av tre tall ved å bruke den ternære operatoren.
LargestNumberExample.java
public class LargestNumberExample { public static void main(String args[]) { int x=69; int y=89; int z=79; int largestNumber= (x > y) ? (x > z ? x : z) : (y > z ? y : z); System.out.println('The largest numbers is: '+largestNumber); } }
Produksjon
The largest number is: 89
I programmet ovenfor har vi tatt tre variabler x, y og z som har verdiene henholdsvis 69, 89 og 79. Uttrykket (x > y) ? (x > z ? x : z) : (y > z ? y : z) evaluerer det største tallet blant tre tall og lagrer sluttresultatet i variabelen størsteTall. La oss forstå utførelsesrekkefølgen til uttrykket.
shreya ghoshal første ektemann
Først sjekker den uttrykket (x > y) . Hvis det returnerer sant, uttrykket (x > z ? x : z) blir henrettet, ellers uttrykket (y > z ? y : z) blir henrettet.
Når uttrykket (x > z ? x : z) blir utført, kontrollerer den tilstanden ytterligere x > z . Hvis betingelsen returnerer sann, returneres verdien av x, ellers returneres verdien av z.
Når uttrykket (y > z ? y : z) blir utført, kontrollerer tilstanden ytterligere y > z . Hvis betingelsen returnerer sann, returneres verdien av y, ellers returneres verdien av z.
Derfor får vi det største av tre tall ved å bruke den ternære operatoren.