ternary operator java tutorial with examples
Tento výukový program vysvetľuje, čo je ternárny operátor v jazyku Java, syntaxe a výhodách ternárneho operátora Java, pomocou rôznych príkladov kódu:
V našom staršom výučbe o operátorovi Java sme videli rôznych operátorov podporovaných v prostredí Java vrátane podmienených operátorov.
V tomto tutoriáli preskúmame všetko o Ternary Operators, ktoré sú jedným z podmienených operátorov.
=> Dajte si pozor na jednoduchú sériu školení Java tu.
Čo sa dozviete:
Čo je ternárny operátor v prostredí Java?
V našom návode nazvanom „Java Operators“ sme videli nasledujúce podmienené operátory podporované v Jave.
Prevádzkovateľ | Popis |
---|---|
&& | Podmienené-A |
|| | Podmienené-ALEBO |
?: | Ternary (skratka pre výrok if-then-else) |
Medzi vyššie uvedenými podmienenými operátormi sú prvé dva, tj. Podmienené-AND a Podmienené-OR, už podrobne obsiahnuté v našom návode Logické operátory.
Ďalším významným a bežne používaným podporovaným podmieneným operátorom je ternárny operátor ‘ ?: ‘Ktorý sa tiež nazýva skratka pre výrok typu„ ak-potom-iné “.
Používanie Java Ternary Operator
Pozrime sa podrobne na tohto Java Ternary Operator.
Syntax:
Ternárny operátor má nasledujúcu syntax:
resultValue = testConditionStatement ? value1 : value2;
Vo vyššie uvedenom vyhlásení
resultValue | Toto je premenná, ktorej sa priradí hodnota |
---|---|
testConditionStatement | Toto je príkaz testovacej podmienky, ktorý sa vyhodnotí a vráti boolovskú hodnotu, tj. Je pravdivý alebo nepravdivý |
hodnota1 | ak bude testConditionStatement vyhodnotený ako ‘true’, potom bude value1 priradená k resultValue |
hodnota2 | ak bude testConditionStatement vyhodnotený ako ‘false’, potom bude value2 priradená k resultValue |
Napríklad, String resultString = (5> 1)? „PASS“: „FAIL“;
Vo vyššie uvedenom príklade ternárny operátor vyhodnotí podmienku testu (5> 1). Ak vráti hodnotu true, priradí hodnotu1, tj. „PASS“, a priradí „FAIL“, ak vráti hodnotu false. Pretože (5> 1) je pravda, resultString hodnota sa priradí ako „PASS“.
Tento operátor sa nazýva ako Ternárny operátor pretože Ternary Operator používa 3 operandy, prvý je boolovský výraz, ktorý sa vyhodnocuje ako pravdivý alebo nepravdivý, druhý je výsledok, keď sa booleovský výraz vyhodnotí ako true, a tretí je výsledok, keď sa booleovský výraz vyhodnotí ako nepravdivý.
Výhody použitia Java Ternary Operator
Ako už bolo spomenuté, ternárny operátor sa nazýva aj skratka pre príkaz if-then-else. Zvyšuje čitateľnosť kódu.
Pozrime sa na to pomocou nasledujúcich ukážkových programov.
Príklady ternárnych operátorov
Príklad 1:Použitie ternárneho operátora ako alternatívy k if-else
Tu je ukážkový program využívajúci jednoduchú podmienku typu if-else:
public class TernaryOperatorDemo1{ public static void main(String() args) { int x = 5; int y = 10; String resultValue = null; if(x>=y) { resultValue = 'x is greater than or maybe equal to y'; }else { resultValue = 'x is less than y'; } System.out.println(resultValue); //o/p is x is less than y } }
Tento program vytlačí nasledujúci výstup:
x je menšie ako y
Pokúsme sa teraz znova napísať rovnaký kód pomocou znaku a ternárny operátor nasledovne. Vo vyššie uvedenom programe je resultValue priradená hodnota na základe vyhodnotenia výrazu (x> = y) v jednoduchej podmienke if and else.
public class TernaryOperatorDemo2{ public static void main(String() args) { int x = 5; int y = 10; String resultValue=(x>=y)?'x is greater than or maybe equal to y':'x is less than y'; System.out.println(resultValue); //o/p is x is less than y } }
Všimnite si nasledujúci blok kódu if-else v TernaryOperatorDemo1 trieda:
ako zvládnuť ťažké situácie
If(x>=y) { resultValue = 'x is greater than or maybe equal to y'; }else { resultValue = 'x is less than y'; }
Toto je nahradené nasledujúcim jedným riadkom v TernaryOperatorDemo2 trieda:
String resultValue = (x> = y)? ”X je väčšie alebo sa môže rovnať y”: ”x je menšie ako y”;
Tento program vytlačí úplne rovnaký výstup ako TernaryOperatorDemo1 trieda:
x je menšie ako y
To sa nemusí zdať, že sa význam mení v mnohých riadkoch kódu. Ale v skutočnom scenári nie je podmienka typu „inak“ taká jednoduchá. Bežne sa vyžaduje použitie príkazu if-else-if. V takýchto scenároch dáva použitie ternárneho operátora výrazný rozdiel v počte riadkov kódu.
Príklad 2:Použitie ternárneho operátora ako alternatívy k if-else-if
tj. ternárny operátor s viacerými podmienkami
Pozrime sa, ako možno ternárny operátor použiť ako alternatívu k rebríčku keby-inak-keby.
Zvážte nasledujúci ukážkový kód Java:
public class TernaryOperatorDemo3{ public static void main(String() args) { int percentage=70; if(percentage>=60){ System.out.println('A grade'); }else if(percentage>=40){ System.out.println('B grade'); }else { System.out.println('Not Eligible'); } } }
Vo vyššie uvedenej vzorke sa na vytlačenie vhodnej poznámky porovnaním percenta použije podmienka „ak-inak-ak“.
Tento program vytlačí nasledujúci výstup:
Známka
Pokúsme sa teraz znova napísať rovnaký kód pomocou znaku a ternárny operátor nasledovne:
public class TernaryOperatorDemo4{ public static void main(String() args) { int percentage=70; String resultValue = (percentage>=60)?'A grade':((percentage>=40)?'B grade':'Not Eligible'); System.out.println(resultValue); } }
Všimnite si nasledujúce blokovanie kódu if-else-if v TernaryOperatorDemo3 trieda:
if(percentage>=60){ System.out.println('A grade'); }else if(percentage>=40){ System.out.println('B grade'); }else { System.out.println('Not Eligible'); }
Toto je nahradené nasledujúcim jedným riadkom v TernaryOperatorDemo4 trieda:
Reťazec resultValue = (percento> = 60)? „Známka A“: ((percento> = 40)? „Známka B“: „Neoprávnené“);
Tento program vytlačí úplne rovnaký výstup ako TernaryOperatorDemo3 trieda:
Tento program vytlačí nasledujúci výstup:
Známka
Príklad 3:Použitie ternárneho operátora ako alternatívy k rozvodnej skrini
Teraz zvážime ešte jeden scenár s vyhlásením o zmene prípadu.
V nasledujúcom ukážkovom kóde sa príkaz switch-case používa na vyhodnotenie hodnoty, ktorá sa má priradiť premennej String. tj hodnota farby sa priraďuje na základe celočíselnej hodnoty colorCode pomocou príkazu switch-case.
Nižšie je uvedený príklad kódu Java:
ktorá z nasledujúcich možností je cesta k tlačidlu „urobiť snímku obrazovky“?
public class TernaryOperatorDemo5{ public static void main(String() args) { int colorCode = 101; String color = null; switch(colorCode) { case 100 : color = 'Yellow'; break; case 101 : color = 'Green'; break; case 102 : color = 'Red'; break; default : color = 'Invalid'; } System.out.println('Color --->'+color); } }
Tento program vytlačí nasledujúci výstup:
Farba -> Zelená
Teraz sa pozrime, ako ternárny operátor tu môže byť užitočné zjednodušiť kód. Poďme teda znova napísať ten istý kód pomocou a ternárny operátor nasledovne:
public class TernaryOperatorDemo6{ public static void main(String() args) { int colorCode = 101; String color = null; color=(colorCode==100)?'Yellow':((colorCode==101)?'Green':((colorCode==102)?'Red':'Invalid')); System.out.println('Color --->'+color); } }
Všimnite si nasledujúci blok kódu spínacej skrinky v TernaryOperatorDemo5 trieda:
switch(colorCode) { case 100 : color = 'Yellow'; break; case 101 : color = 'Green'; break; case 102 : color = 'Red'; break; default : color = 'Invalid'; }
Toto je nahradené nasledujúcim jedným riadkom v TernaryOperatorDemo6 trieda:
color = (colorCode == 100)? ”Yellow”: ((colorCode == 101)? ”Green”: ((colorCode == 102)? ”Red”: “Invalid”));
Tento program vytlačí úplne rovnaký výstup ako TernaryOperatorDemo5 :
Tento program vytlačí nasledujúci výstup:
Farba -> Zelená
Časté otázky
Otázka 1) Definujte ternárny operátor v Jave pomocou príkladu.
Odpoveď: Operátor Java Ternary je podmienený operátor s nasledujúcou syntaxou:
resultValue = testConditionStatement ? value1 : value2;
Tu resultValue dostane pridelené ako hodnota1 alebo hodnota2 založené na testConditionStatement hodnota vyhodnotenia ako pravdivá alebo nepravdivá.
Napríklad , Výsledok reťazca = (-1> 0)? 'Áno nie';
Výsledok dostane priradenú hodnotu ako „áno“, ak (-1> 0) vyhodnotí ako pravdivé a „nie“, ak (-1> 0) vyhodnotí ako nepravdivé. V tomto prípade je podmienka pravdivá, a preto je výsledku priradená hodnota „áno“
Otázka 2) Ako napíšete ternárnu podmienku v Jave?
Odpoveď: Ako názov napovedá, ternárny operátor používa 3 operandy nasledovne:
resultValue = testConditionStatement ? value1 : value2;
testConditionStatement je testovací stav, ktorý vracia logickú hodnotu
hodnota1: hodnota, ktorá sa má priradiť, keď testConditionStatement vráti hodnotu true
value2: hodnota, ktorá sa má priradiť, keď testConditionStatement vráti hodnotu false
Napríklad , Výsledok reťazca = (-2> 2)? 'Áno nie';
Otázka č. 3) Aké je použitie a syntax ternárneho operátora?
Odpoveď: Operátor Java Ternary sa riadi nasledujúcou syntaxou:
resultValue = testConditionStatement ? value1 : value2;
Ternárny operátor sa používa ako skratka pre príkaz if-then-else
Otázka 4) Je ternárny operátor rýchlejší ako keby?
Odpoveď: Ternárna je rýchlejšia ako keby inak, kým nie sú potrebné ďalšie výpočty potrebné na prevod logiky na použitie ternárnej. Tiež zvyšuje čitateľnosť kódu.
Otázka č. 5) Ako fungujú ternárni operátori?
Odpoveď: Ternárny operátor má tri operandy. Prvý argument je podmienka testu, ktorá vracia boolovskú hodnotu, druhý je hodnota, ktorá sa má priradiť, keď je vrátená boolovská hodnota true, tretí je hodnota, ktorá sa má priradiť, keď je booleovská hodnota vrátená false.
Záver
V tomto tutoriáli sme sa zaoberali ternárnym operátorom ?: podrobne.
aké je použitie maven v seléne
Videli sme syntax ternárneho operátora a prečo sa pomocou ukážkových programov nazýva ako skratka pre príkaz if-then-else. Tiež sme videli, ako môže byť užitočné zvýšiť čitateľnosť kódu pomocou príkazu na prepínanie medzi malými a veľkými písmenami.
Prečítajte si tiež = >> Ternárny operátor v C #
=> Navštívte tu a dozviete sa Java od začiatku.
Odporúčané čítanie
- Jagged Array In Java - návod s príkladmi
- Výukový program JAVA pre začiatočníkov: viac ako 100 praktických výučbových programov Java Video
- Výukový program Java Reflection s príkladmi
- Výukový program Java Array Length s príkladmi kódu
- Výukový program pre Java String Metódy reťazca Java s príkladmi
- Čo je Java Vector | Výukový program Java Vector Class s príkladmi
- Ako zoradiť pole v Jave - návod s príkladmi
- Java „toto“ kľúčové slovo: Výukový program s príkladmi kódu