logo

Ternarni operator Java

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
Ternarni operator Java

Razmotrimo ternarni operator kroz dijagram toka.

Ternarni operator Java

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.

Ternarni operator Java

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.