Javni ternarni operater (s primerom)

V tej vadnici boste s pomočjo primerov spoznali ternarni operater in njegovo uporabo v Javi.

V Javi lahko ternarni operator v določenih situacijah nadomesti stavek if … else. Preden se seznanite s ternarnim operaterjem, obiščite izjavo Java if … else.

Ternarni operater v Javi

Ternarni operater oceni testno stanje in na podlagi rezultata pogoja izvede blok kode.

Sintaksa je:

 condition ? expression1 : expression2;

Tu se stanje oceni in

  • če je pogoj true, se izraz1 izvrši.
  • In če je pogoj false, se izraz2 izvrši.

Ternarni operator sprejme 3 operande (pogoj, izraz1 in izraz2). Zato ime trojni operater .

Primer: 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(); ) )

Izhod 1

 Vpišite svoje ocene: 75 Opravite izpit.

Recimo, da uporabnik vnese 75 . Nato stanje marks> 40oceni na true. Zato je prvi prehod izraza dodeljen rezultatu.

Rezultat 2

 Vpišite svoje ocene: 24 Ne izpit.

Recimo, da uporabnik vnese 24 . Nato stanje marks> 40oceni na false. Zato je drugi izraz neuspeh dodeljen rezultatu.

Kdaj uporabiti ternarnega operaterja?

V Javi lahko ternarni operator nadomestimo nekatere vrste if… elsestavkov. Na primer

To kodo lahko zamenjate

 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"); ) ) )

s

 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); ) )

Izhod

 Pozitivna številka

Tu imata oba programa enak izhod. Vendar uporaba ternarnega operaterja naredi našo kodo bolj berljivo in čisto.

Opomba : Ternarni operator uporabljajte samo, če je izpis kratek.

Vgnezdeni ternarni operaterji

Možno je uporabiti tudi enega ternarnega operaterja znotraj drugega ternarnega operaterja. V Javi se imenuje ugnezdeni ternarni operator.

Tukaj je program za iskanje največje od treh številk z uporabo ugnezdenega ternarnega operatorja.

 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); ) )

Izhod

 Največje število: 9

V zgornjem primeru opazite uporabo ternarnega operaterja,

 (n1>= n2) ? ((n1>=n3) ? n1 : n3) : ((n2>= n3) ? n2 : n3);

Tukaj,

  • (n1> = n2) - prvi preskusni pogoj, ki preveri, ali je n1 večji od n2
  • (n1> = n3) - drugi preskusni pogoj, ki se izvede, če je prvi pogojtrue
  • (n2> = n3) - tretji preskusni pogoj, ki se izvede, če je prvi pogojfalse

Opomba : Ni priporočljivo uporabljati ugnezdenih ternarnih operatorjev. To je zato, ker je naša koda bolj zapletena.

Zanimive Članki...