U Javi, ternarni operator je vrsta Java uvjetnog operatora. U ovom odjeljku raspravljat ćemo o ternarni operator u Javi s pravilnim primjerima.
Značenje trojni sastoji se od tri dijela. The ternarni operator (? :) sastoji se od tri operanda. Koristi se za procjenu Booleovih izraza. Operator odlučuje koja će vrijednost biti dodijeljena varijabli. To je jedini uvjetni operator koji prihvaća tri operanda. Može se koristiti umjesto naredbe if-else. To kod čini mnogo lakšim, čitljivijim i kraćim.
Napomena: Svaki kod koji koristi if-else naredbu ne može se zamijeniti ternarnim operatorom.
Sintaksa:
variable = (condition) ? expression1 : expression2
Gornja izjava navodi da ako se stanje vrati true, expression1 se pogubi, inače izraz2 se izvršava i konačni rezultat pohranjuje u varijablu.
preuzimanje xvideoservicethief ubuntu 14.04
Razmotrimo ternarni operator kroz dijagram toka.
Primjer ternarnog operatora
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); } }
Izlaz
Value of y is: 90 Value of y is: 61
Pogledajmo još jedan primjer koji procjenjuje najveći od tri broja pomoću ternarnog operatora.
NajvećiBrojPrimjer.java
font gimp
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); } }
Izlaz
The largest number is: 89
U gornjem programu uzeli smo tri varijable x, y i z koje imaju vrijednosti 69, 89, odnosno 79. Izraz (x > y) ? (x > z ? x : z) : (y > z ? y : z) procjenjuje najveći broj među tri broja i pohranjuje konačni rezultat u varijablu najveći broj. Hajdemo razumjeti redoslijed izvršavanja izraza.
Prvo, provjerava izraz (x > y) . Ako vrati true izraz (x > z ? x : z) se izvršava, inače izraz (y > z ? y : z) se pogubi.
Kada se izraz (x > z ? x : z) se izvršava, dodatno provjerava stanje x > z . Ako uvjet vrati true, vraća se vrijednost x, inače se vraća vrijednost z.
koliko je 25 od 100
Kada se izraz (y > z ? y : z) se izvršava dalje provjerava stanje y > z . Ako uvjet vrati true, vraća se vrijednost y, inače se vraća vrijednost z.
Stoga, pomoću ternarnog operatora dobivamo najveći od tri broja.