logo

Nosacījuma operators Java

Java valodā, nosacījuma operatori pārbaudiet stāvokli un pieņem lēmumu par vēlamo rezultātu, pamatojoties uz abiem nosacījumiem. Šajā sadaļā mēs apspriedīsim nosacījuma operators Java.

apakšvirknes virkne java

Nosacīto operatoru veidi

Ir trīs nosacījuma veidi operators Java :

  • Nosacīti UN
  • Nosacīts VAI
  • Trīskāršs operators
Operators Simbols
Nosacīti vai loģiski UN &&
Nosacīts vai loģisks VAI ||
Trīskāršs operators ?:

Nosacīti UN

Operators tiek lietots starp divām Būla izteiksmēm. To apzīmē ar diviem UN operatoriem (&&). Tas atgriež patiesu tad un tikai tad, ja abas izteiksmes ir patiesas, pretējā gadījumā atgriež false.

Izteiksme1 Izteiksme2 Izteiksme1 && Izteiksme2
Taisnība Nepatiesi Nepatiesi
Nepatiesi Taisnība Nepatiesi
Nepatiesi Nepatiesi Nepatiesi
Taisnība Taisnība Taisnība

Nosacīts VAI

Operators tiek lietots starp divām Būla izteiksmēm. To apzīmē ar operatoru divi VAI (||). Tas atgriež patiesu, ja kāda no izteiksmēm ir patiesa, pretējā gadījumā atgriež false.

Izteiksme1 Izteiksme2 Izteiksme1 || Izteiksme2
Taisnība Taisnība Taisnība
Taisnība Nepatiesi Taisnība
Nepatiesi Taisnība Taisnība
Nepatiesi Nepatiesi Nepatiesi

Izveidosim Java programmu un izmantosim nosacījumu operatoru.

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

Trīskāršs operators

Nozīme trīskāršs sastāv no trim daļām. The trīskāršs operators (? :) sastāv no trim operandiem. To izmanto Būla izteiksmju novērtēšanai. Operators izlemj, kura vērtība tiks piešķirta mainīgajam. Tas ir vienīgais nosacījuma operators, kas pieņem trīs operandus. To var izmantot priekšraksta if-else vietā. Tas padara kodu daudz vienkāršāku, lasāmāku un īsāku.

Piezīme. Katru kodu, kurā tiek izmantots priekšraksts if-else, nevar aizstāt ar trīskāršu operatoru.

Sintakse:

 variable = (condition) ? expression1 : expression2 

Iepriekš minētajā paziņojumā teikts, ka, ja nosacījums atgriežas patiess, izteiksme1 tiek izpildīts, pretējā gadījumā izteiksme2 tiek izpildīts un gala rezultāts tiek saglabāts mainīgajā.

Nosacījuma operators Java

Izpratīsim trīskāršo operatoru, izmantojot blokshēmu.

Nosacījuma operators 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); } } 

Izvade

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

Apskatīsim citu piemēru, kas novērtē lielāko no trim skaitļiem, izmantojot trīskāršo operatoru.

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

Izvade

 The largest number is: 89 

Iepriekš minētajā programmā mēs esam izmantojuši trīs mainīgos x, y un z, kuru vērtības ir attiecīgi 69, 89 un 79. Izteiciens (x > y) ? (x > z ? x : z) : (y > z ? y : z) novērtē lielāko skaitli starp trim skaitļiem un saglabā gala rezultātu mainīgajā lielākaisNumber. Sapratīsim izteiksmes izpildes secību.

Nosacījuma operators Java

Pirmkārt, tas pārbauda izteiksmi (x > y) . Ja tas atgriež patieso izteiksmi (x > z ? x : z) tiek izpildīts, citādi izteiksme (y > z ? y : z) tiek izpildīts.

Kad izteiksme (x > z ? x : z) tiek izpildīts, tas tālāk pārbauda stāvokli x > z . Ja nosacījums atgriež patieso vērtību, tiek atgriezta x vērtība, pretējā gadījumā tiek atgriezta z vērtība.

Kad izteiksme (y > z ? y : z) tiek izpildīts, tas vēl vairāk pārbauda stāvokli y > z . Ja nosacījums atgriež patieso vērtību, tiek atgriezta y vērtība, pretējā gadījumā tiek atgriezta z vērtība.

Tāpēc mēs iegūstam lielāko no trim skaitļiem, izmantojot trīskāršu operatoru.