logo

Podmienený operátor v jazyku Java

v Jave podmienené operátory skontroluje podmienku a na základe oboch podmienok rozhodne o požadovanom výsledku. V tejto časti budeme diskutovať o podmienený operátor v jazyku Java.

Typy podmienených operátorov

Existujú tri typy kondicionálov operátor v jazyku Java :

nastaviť v jave
  • Podmienené AND
  • Podmienené ALEBO
  • Ternárny operátor
Operátor Symbol
Podmienené alebo logické AND &&
Podmienené alebo logické ALEBO ||
Ternárny operátor ?:

Podmienené AND

Operátor sa aplikuje medzi dva booleovské výrazy. Označuje sa dvoma operátormi AND (&&). Vráti hodnotu true vtedy a len vtedy, ak sú oba výrazy pravdivé, iná vráti hodnotu false.

Výraz1 Výraz2 Výraz1 && Výraz2
Pravda Nepravdivé Nepravdivé
Nepravdivé Pravda Nepravdivé
Nepravdivé Nepravdivé Nepravdivé
Pravda Pravda Pravda

Podmienené ALEBO

Operátor sa aplikuje medzi dva booleovské výrazy. Označuje sa operátorom dva OR (||). Ak je niektorý z výrazov pravdivý, vráti hodnotu true, inak vráti hodnotu false.

Výraz1 Výraz2 Výraz1 || Výraz2
Pravda Pravda Pravda
Pravda Nepravdivé Pravda
Nepravdivé Pravda Pravda
Nepravdivé Nepravdivé Nepravdivé

Vytvorme Java program a použijeme podmienený operátor.

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);>

Ternárny operátor

Význam trojčlenný sa skladá z troch častí. The ternárny operátor (? :) pozostáva z troch operandov. Používa sa na vyhodnotenie booleovských výrazov. Operátor rozhoduje o tom, ktorá hodnota bude premennej priradená. Je to jediný podmienený operátor, ktorý akceptuje tri operandy. Môže sa použiť namiesto príkazu if-else. Vďaka tomu je kód oveľa jednoduchší, čitateľnejší a kratší.

Poznámka: Každý kód používajúci príkaz if-else nemožno nahradiť ternárnym operátorom.

Syntax:

 variable = (condition) ? expression1 : expression2 

Vyššie uvedené vyhlásenie uvádza, že ak sa podmienka vráti pravda, výraz1 bude popravený, inak výraz2 vykoná sa a konečný výsledok sa uloží do premennej.

Podmienený operátor v jazyku Java

Poďme pochopiť ternárny operátor prostredníctvom vývojového diagramu.

Podmienený operátor v jazyku 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); } } 

Výkon

Algoritmus pre binárne vyhľadávanie
 Value of y is: 90 Value of y is: 61 

Pozrime sa na ďalší príklad, ktorý vyhodnocuje najväčšie z troch čísel pomocou ternárneho operátora.

GreatstNumberExample.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); } } 

Výkon

 The largest number is: 89 

Vo vyššie uvedenom programe sme vzali tri premenné x, y a z s hodnotami 69, 89 a 79. Výraz (x > y) ? (x > z ? x : z): (y > z ? y : z) vyhodnotí najväčšie číslo spomedzi troch čísel a konečný výsledok uloží do premennej najväčšieČíslo. Poďme pochopiť poradie vykonávania výrazu.

Podmienený operátor v jazyku Java

Najprv skontroluje výraz (x > y) . Ak vráti hodnotu true, výraz (x > z ? x : z) je popravený, inak výraz (y > z ? y: z) dostane popravu.

Keď výraz (x > z ? x : z) vykoná, ďalej kontroluje stav x > z . Ak podmienka vráti hodnotu true, vráti sa hodnota x, inak sa vráti hodnota z.

Keď výraz (y > z ? y: z) vykoná sa ďalej kontroluje stav y > z . Ak podmienka vráti hodnotu true, vráti sa hodnota y, inak sa vráti hodnota z.

Preto získame najväčšie z troch čísel pomocou ternárneho operátora.