Šioje pamokoje su pavyzdžių pagalba sužinosite apie trijų komponentų operatorių ir jo naudojimą „Java“.
„Java“ sistemoje trijų komponentų operatorius gali būti naudojamas teiginiui „if… else“ pakeisti tam tikrose situacijose. Prieš sužinodami apie trijų komponentų operatorių, būtinai apsilankykite „Java“, jei… kitas teiginys.
„Ternary“ operatorius „Java“
Trigubis operatorius įvertina bandymo sąlygą ir pagal sąlygos rezultatą įvykdo kodo bloką.
Tai sintaksė yra:
condition ? expression1 : expression2;
Čia būklė vertinama ir
- jei yra sąlyga
true
, vykdoma išraiška1. - Jei yra sąlyga
false
, vykdoma išraiška2.
Ternarinis operatorius imasi 3 operandus (condition, expression1 ir expression2). Taigi, pavadinimas trijų komponentų operatorius .
Pavyzdys: „Java Ternary Operator“
import java.util.Scanner; class Main ( public static void main(String() args) ( // take input from users Scanner input = new Scanner(System.in); System.out.println("Enter your marks: "); double marks = input.nextDouble(); // ternary operator checks if // marks is greater than 40 String result = (marks> 40) ? "pass" : "fail"; System.out.println("You " + result + " the exam."); input.close(); ) )
1 rezultatas
Įveskite savo pažymius: 75 išlaikote egzaminą.
Tarkime, kad vartotojas įveda 75 . Tada būklė marks> 40
įvertinama true
. Taigi rezultatui priskiriamas pirmasis išraiškos leidimas.
2 išėjimas
Įveskite savo pažymius: 24 Jūs neišlaikėte egzamino.
Tarkime, kad vartotojas įveda 24 . Tada būklė marks> 40
įvertinama false
. Taigi rezultatui priskiriama antroji išraiška „fail“.
Kada naudoti „Ternary Operator“?
„Java“ sistemoje trijų komponentų operatorius gali būti naudojamas tam tikrų tipų if… else
teiginiams pakeisti . Pavyzdžiui,
Galite pakeisti šį kodą
class Main ( public static void main(String() args) ( // create a variable int number = 24; if(number> 0) ( System.out.println("Positive Number"); ) else ( System.out.println("Negative Number"); ) ) )
su
class Main ( public static void main(String() args) ( // create a variable int number = 24; String result = (number> 0) ? "Positive Number" : "Negative Number"; System.out.println(result); ) )
Rezultatas
Teigiamas skaičius
Čia abi programos suteikia tą patį išėjimą. Tačiau naudojant trijų komponentų operatorių mūsų kodas tampa lengviau įskaitomas ir švaresnis.
Pastaba : Naudokite trikampį operatorių tik tuo atveju, jei gautas sakinys yra trumpas.
Lizdiniai trinariai operatoriai
Taip pat galima naudoti vieną trijų komponentų operatorių kito trejeto operatoriaus viduje. Jis vadinamas „Java“ įdėtuoju trijų komponentų operatoriumi.
Čia yra programa, skirta rasti didžiausią iš 3 skaičių naudojant įdėtą trijų komponentų operatorių.
class Main ( public static void main(String() args) ( // create a variable int n1 = 2, n2 = 9, n3 = -11; // nested ternary operator // to find the largest number int largest = (n1>= n2) ? ((n1>= n3) ? n1 : n3) : ((n2>= n3) ? n2 : n3); System.out.println("Largest Number: " + largest); ) )
Rezultatas
Didžiausias skaičius: 9
Ankstesniame pavyzdyje atkreipkite dėmesį į tai, kad naudojamas trinaris operatorius,
(n1>= n2) ? ((n1>=n3) ? n1 : n3) : ((n2>= n3) ? n2 : n3);
Čia
- (n1> = n2) - pirmoji bandymo sąlyga, tikrinanti, ar n1 yra didesnis nei n2
- (n1> = n3) - antroji bandymo sąlyga, kuri vykdoma, jei pirmoji sąlyga yra
true
- (n2> = n3) - trečioji bandymo sąlyga, kuri vykdoma, jei pirmoji sąlyga yra
false
Pastaba : nerekomenduojama naudoti įdėtųjų trijų komponentų operatorių. Taip yra todėl, kad tai daro mūsų kodą sudėtingesnį.