logo

Operator condiționat în Java

În Java, operatori condiţionali verifica starea si decide rezultatul dorit pe baza ambelor conditii. În această secțiune, vom discuta despre operator condițional în Java.

Tipuri de operator condiționat

Există trei tipuri de condițional operator în Java :

  • ȘI condiționat
  • SAU condiționat
  • Operator ternar
Operator Simbol
ȘI condițional sau logic &&
SAU condiționat sau logic ||
Operator ternar ?:

ȘI condiționat

Operatorul este aplicat între două expresii booleene. Este notat cu cei doi operatori AND (&&). Returnează adevărat dacă și numai dacă ambele expresii sunt adevărate, altfel returnează false.

Expresia1 Expresia 2 Expresia1 && Expresia2
Adevărat Fals Fals
Fals Adevărat Fals
Fals Fals Fals
Adevărat Adevărat Adevărat

SAU condiționat

Operatorul este aplicat între două expresii booleene. Este notat cu doi operatori SAU (||). Returnează adevărat dacă oricare dintre expresii este adevărată, în caz contrar returnează false.

Expresia1 Expresia 2 Expresia1 || Expresia 2
Adevărat Adevărat Adevărat
Adevărat Fals Adevărat
Fals Adevărat Adevărat
Fals Fals Fals

Să creăm un program Java și să folosim operatorul condiționat.

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&apos;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(&apos;Value of y is: &apos; + y); y = (x == 20) ? 61: 90; System.out.println(&apos;Value of y is: &apos; + y); } } </pre> <p> <strong>Output</strong> </p> <pre> Value of y is: 90 Value of y is: 61 </pre> <p>Let&apos;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 &gt; y) ? (x &gt; z ? x : z) : (y &gt; z ? y : z); System.out.println(&apos;The largest numbers is: &apos;+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 &gt; y) ? (x &gt; z ? x : z) : (y &gt; z ? y : z)</strong> evaluates the largest number among three numbers and store the final result in the variable largestNumber. Let&apos;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 &gt; y)</strong> . If it returns true the expression <strong>(x &gt; z ? x : z)</strong> gets executed, else the expression <strong>(y &gt; z ? y : z)</strong> gets executed.</p> <p>When the expression <strong>(x &gt; z ? x : z)</strong> gets executed, it further checks the condition <strong>x &gt; 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 &gt; z ? y : z)</strong> gets executed it further checks the condition <strong>y &gt; 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);>

Operator ternar

Înțelesul lui ternar este compus din trei părți. The operator ternar (? :) este format din trei operanzi. Este folosit pentru a evalua expresiile booleene. Operatorul decide ce valoare va fi atribuită variabilei. Este singurul operator condiționat care acceptă trei operanzi. Poate fi folosit în locul instrucțiunii if-else. Face codul mult mai ușor, mai ușor de citit și mai scurt.

testarea software-ului

Notă: Fiecare cod care utilizează o instrucțiune if-else nu poate fi înlocuit cu un operator ternar.

Sintaxă:

 variable = (condition) ? expression1 : expression2 

Declarația de mai sus afirmă că dacă condiția revine adevărat, expresie1 este executat, altfel expresie2 este executat și rezultatul final stocat într-o variabilă.

Operator condiționat în Java

Să înțelegem operatorul ternar prin diagramă.

Operator condiționat în Java

TernaryOperatorExample.java

 public class TernaryOperatorExample { public static void main(String args[]) { int x, y; x = 20; y = (x == 1) ? 61: 90; System.out.println(&apos;Value of y is: &apos; + y); y = (x == 20) ? 61: 90; System.out.println(&apos;Value of y is: &apos; + y); } } 

Ieșire

 Value of y is: 90 Value of y is: 61 

Să vedem un alt exemplu care evaluează cel mai mare dintre trei numere folosind operatorul ternar.

LargestNumberExample.java

 public class LargestNumberExample { public static void main(String args[]) { int x=69; int y=89; int z=79; int largestNumber= (x &gt; y) ? (x &gt; z ? x : z) : (y &gt; z ? y : z); System.out.println(&apos;The largest numbers is: &apos;+largestNumber); } } 

Ieșire

 The largest number is: 89 

În programul de mai sus, am luat trei variabile x, y și z având valorile 69, 89 și, respectiv, 79. Expresia (x > y)? (x > z ? x : z) : (y > z ? y : z) evaluează cel mai mare număr dintre trei numere și stochează rezultatul final în variabila cea mai mareNumăr. Să înțelegem ordinea de execuție a expresiei.

Operator condiționat în Java

În primul rând, verifică expresia (x > y) . Dacă returnează adevărată expresia (x > z ? x : z) este executat, altfel expresia (y > z ? y : z) este executat.

versiuni Android

Când expresia (x > z ? x : z) este executat, verifică în continuare starea x > z . Dacă condiția returnează adevărată, valoarea lui x este returnată, altfel valoarea lui z este returnată.

Când expresia (y > z ? y : z) este executat, verifică în continuare starea y > z . Dacă condiția returnează adevărată, valoarea lui y este returnată, altfel valoarea lui z este returnată.

Prin urmare, obținem cel mai mare dintre trei numere folosind operatorul ternar.