На Java, умовні оператори перевірити умову та визначити бажаний результат на основі обох умов. У цьому розділі ми обговоримо умовний оператор в Java.
Типи умовного оператора
Існує три види умовного способу оператор на Java :
- Умовне І
- Умовне АБО
- Тернарний оператор
Оператор | символ |
---|---|
Умовне або логічне І | && |
Умовне або логічне АБО | || |
Тернарний оператор | ?: |
Умовне І
Оператор застосовується між двома логічними виразами. Він позначається двома операторами І (&&). Він повертає істину тоді і тільки тоді, коли обидва вирази істинні, інакше повертає хибність.
Вираз1 | Вираз2 | Вираз1 && Вираз2 |
---|---|---|
правда | помилковий | помилковий |
помилковий | правда | помилковий |
помилковий | помилковий | помилковий |
правда | правда | правда |
Умовне АБО
Оператор застосовується між двома логічними виразами. Він позначається двома операторами АБО (||). Він повертає true, якщо будь-який вираз є true, інакше повертає false.
Вираз1 | Вираз2 | Вираз1 || Вираз2 |
---|---|---|
правда | правда | правда |
правда | помилковий | правда |
помилковий | правда | правда |
помилковий | помилковий | помилковий |
Давайте створимо програму на Java та використаємо умовний оператор.
ConditionalOperatorExample.java
символ 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);>
Тернарний оператор
Значення потрійний складається з трьох частин. The тернарний оператор (? :) складається з трьох операндів. Він використовується для обчислення логічних виразів. Оператор вирішує, яке значення буде присвоєно змінній. Це єдиний умовний оператор, який приймає три операнди. Його можна використовувати замість оператора if-else. Це робить код набагато легшим, читабельнішим і коротшим.
Примітка: кожен код, у якому використовується оператор if-else, не можна замінити тернарним оператором.
Синтаксис:
зразок коду java
variable = (condition) ? expression1 : expression2
Наведене вище твердження стверджує, що якщо умова повертається правда, вираз1 виконується, інакше вираз2 виконується, а кінцевий результат зберігається в змінній.
Давайте розберемо тернарний оператор за допомогою блок-схеми.
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); } }
Вихід
Value of y is: 90 Value of y is: 61
Давайте розглянемо інший приклад, який обчислює найбільше з трьох чисел за допомогою тернарного оператора.
LargestNumberExample.java
програми python
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); } }
Вихід
The largest number is: 89
У наведеній вище програмі ми взяли три змінні x, y і z, які мають значення 69, 89 і 79 відповідно. Вираз (x > y) ? (x > z ? x : z) : (y > z ? y : z) обчислює найбільше число з трьох чисел і зберігає кінцевий результат у змінній largeNumber. Давайте розберемося з порядком виконання виразу.
Спочатку він перевіряє вираз (x > y) . Якщо він повертає істинний вираз (x > z ? x : z) виконується, інакше вираз (y > z ? y : z) виконується.
Коли вираз (x > z ? x : z) виконується, він додатково перевіряє умову x > z . Якщо умова повертає значення true, повертається значення x, інакше повертається значення z.
Коли вираз (y > z ? y : z) виконується, він додатково перевіряє умову y > z . Якщо умова повертає істину, повертається значення y, інакше повертається значення z.
Таким чином, ми отримуємо найбільше з трьох чисел за допомогою тернарного оператора.