logo

Operador condicional en Java

A Java, operadors condicionals comproveu la condició i decideix el resultat desitjat sobre la base d'ambdues condicions. En aquesta secció, parlarem de operador condicional en Java.

Tipus d'operador condicional

Hi ha tres tipus de condicional operador en Java :

  • AND condicional
  • OR condicional
  • Operador Ternari
Operador Símbol
AND condicional o lògic &&
OR condicional o lògic ||
Operador Ternari ?:

AND condicional

L'operador s'aplica entre dues expressions booleanes. Es denota amb els dos operadors AND (&&). Retorna vertader si i només si ambdues expressions són certes, en cas contrari retorna fals.

Expressió 1 Expressió 2 Expressió1 && Expressió2
És cert Fals Fals
Fals És cert Fals
Fals Fals Fals
És cert És cert És cert

OR condicional

L'operador s'aplica entre dues expressions booleanes. Es denota amb els dos operadors OR (||). Retorna true si alguna de les expressions és vertadera, en cas contrari retorna false.

Expressió 1 Expressió 2 Expressió1 || Expressió 2
És cert És cert És cert
És cert Fals És cert
Fals És cert És cert
Fals Fals Fals

Creem un programa Java i utilitzem l'operador condicional.

ConditionalOperatorExample.java

com trobar la mida del monitor
 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);>

Operador Ternari

El significat de ternari està compost per tres parts. El operador ternari (? :) consta de tres operands. S'utilitza per avaluar expressions booleanes. L'operador decideix quin valor s'assignarà a la variable. És l'únic operador condicional que accepta tres operands. Es pot utilitzar en lloc de la declaració if-else. Fa que el codi sigui molt més fàcil, llegible i més curt.

Nota: Tots els codis que utilitzin una instrucció if-else no es poden substituir per un operador ternari.

Sintaxi:

 variable = (condition) ? expression1 : expression2 

La declaració anterior indica que si la condició torna veritat, expressió 1 s'executa, sinó el expressió 2 s'executa i el resultat final s'emmagatzema en una variable.

Operador condicional en Java

Entenem l'operador ternari a través del diagrama de flux.

Operador condicional en 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); } } 

Sortida

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

Vegem un altre exemple que avalua el major de tres nombres utilitzant l'operador ternari.

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

Sortida

 The largest number is: 89 

En el programa anterior, hem pres tres variables x, y i z amb els valors 69, 89 i 79, respectivament. L'expressió (x > y)? (x > z ? x : z): (y > z ? y : z) avalua el nombre més gran entre tres nombres i emmagatzema el resultat final a la variable majorNumber. Entenem l'ordre d'execució de l'expressió.

Operador condicional en Java

Primer, comprova l'expressió (x > y) . Si retorna cert l'expressió (x > z ? x : z) s'executa, sinó l'expressió (y > z ? y : z) s'executa.

Quan l'expressió (x > z ? x : z) s'executa, comprova encara més la condició x > z . Si la condició retorna cert, es retorna el valor de x, en cas contrari es retorna el valor de z.

Quan l'expressió (y > z ? y : z) s'executa, comprova encara més la condició y > z . Si la condició retorna cert, es retorna el valor de y, en cas contrari es retorna el valor de z.

Per tant, obtenim el major de tres nombres utilitzant l'operador ternari.