I Java, betingede operatører kontrollere tilstanden og afgøre det ønskede resultat på baggrund af begge forhold. I dette afsnit vil vi diskutere betinget operatør i Java.
Typer af betinget operatør
Der er tre typer af de 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 anvendes mellem to booleske udtryk. Det er angivet med de to OG-operatorer (&&). Det returnerer sandt, hvis og kun hvis begge udtryk er sande, ellers returnerer det falsk.
Udtryk 1 | Udtryk 2 | Udtryk1 && Udtryk2 |
---|---|---|
Rigtigt | Falsk | Falsk |
Falsk | Rigtigt | Falsk |
Falsk | Falsk | Falsk |
Rigtigt | Rigtigt | Rigtigt |
Betinget ELLER
Operatoren anvendes mellem to booleske udtryk. Det er angivet med to ELLER-operatoren (||). Det returnerer sandt, hvis noget af udtrykket er sandt, ellers returnerer det falsk.
konverter strengdato
Udtryk 1 | Udtryk 2 | Udtryk1 || Udtryk 2 |
---|---|---|
Rigtigt | Rigtigt | Rigtigt |
Rigtigt | Falsk | Rigtigt |
Falsk | Rigtigt | Rigtigt |
Falsk | Falsk | Falsk |
Lad os oprette et Java-program og bruge den betingede operator.
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
Betydningen af ternær er sammensat af tre dele. Det ternær operator (? :) består af tre operander. Det bruges til at evaluere boolske udtryk. Operatøren bestemmer, hvilken værdi der skal tildeles variablen. Det er den eneste betingede operator, der accepterer tre operander. Den kan bruges i stedet for if-else-sætningen. Det gør koden meget mere nem, læsbar og kortere.
Bemærk: Hver kode, der bruger en if-else-sætning, kan ikke erstattes med en ternær operator.
Syntaks:
variable = (condition) ? expression1 : expression2
Ovenstående erklæring angiver, at hvis tilstanden vender tilbage sandt, udtryk 1 bliver henrettet, ellers udtryk 2 bliver eksekveret og det endelige resultat gemt i en variabel.
Lad os forstå den ternære operatør gennem rutediagrammet.
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); } }
Produktion
latex bord
Value of y is: 90 Value of y is: 61
Lad os se et andet eksempel, der evaluerer det største af tre tal ved hjælp af den ternære operator.
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); } }
Produktion
The largest number is: 89
I ovenstående program har vi taget tre variable x, y og z med værdierne henholdsvis 69, 89 og 79. Udtrykket (x > y) ? (x > z ? x : z) : (y > z ? y : z) evaluerer det største tal blandt tre tal og gemmer det endelige resultat i variablen størsteNumber. Lad os forstå udførelsesrækkefølgen af udtrykket.
shreya ghoshals første mand
Først tjekker den udtrykket (x > y) . Hvis det returnerer sandt, udtrykket (x > z ? x : z) bliver henrettet, ellers udtrykket (y > z ? y : z) bliver henrettet.
Når udtrykket (x > z ? x : z) bliver henrettet, kontrollerer den yderligere tilstanden x > z . Hvis betingelsen returnerer sand, returneres værdien af x, ellers returneres værdien af z.
Når udtrykket (y > z ? y : z) bliver udført, kontrollerer den yderligere tilstanden y > z . Hvis betingelsen returnerer sand, returneres værdien af y, ellers returneres værdien af z.
Derfor får vi det største af tre tal ved at bruge den ternære operator.