Java Ternary Operator (med eksempel)

I denne opplæringen vil du lære om den ternære operatøren og dens bruk i Java ved hjelp av eksempler.

I Java kan en ternær operatør brukes til å erstatte if … else-uttalelsen i visse situasjoner. Før du lærer om den ternære operatøren, må du besøke Java if … else.

Ternary Operator i Java

En ternær operatør evaluerer testtilstanden og utfører en kodeblokk basert på resultatet av tilstanden.

Syntaksen er:

 condition ? expression1 : expression2;

Her blir tilstand evaluert og

  • hvis tilstand er true, blir expression1 utført.
  • Og hvis betingelsen er false, blir expression2 utført.

Den ternære operatøren tar 3 operander (tilstand, uttrykk1 og uttrykk2). Derfor navnet ternær operatør .

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

Utgang 1

 Skriv inn dine karakterer: 75 Du består eksamen.

Anta at brukeren skriver inn 75 . Deretter marks> 40vurderes tilstanden til true. Derfor tildeles det første uttrykkspasset til resultatet.

Utgang 2

 Skriv inn dine karakterer: 24 Du bestå eksamen.

Anta nå at brukeren går inn i 24 . Deretter marks> 40vurderes tilstanden til false. Derfor blir det andre uttrykket fail tilordnet resultatet.

Når skal du bruke den ternære operatøren?

I Java kan den ternære operatøren brukes til å erstatte visse typer if… elseutsagn. For eksempel,

Du kan erstatte denne koden

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

med

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

Produksjon

 Positivt antall

Her gir begge programmene den samme produksjonen. Imidlertid gjør bruken av den ternære operatøren vår kode mer lesbar og ren.

Merk : Du bør bare bruke den ternære operatøren hvis den resulterende uttalelsen er kort.

Nestede ternære operatører

Det er også mulig å bruke en ternær operatør i en annen ternær operatør. Det kalles den nestede ternære operatøren i Java.

Her er et program for å finne det største av tre tall ved hjelp av den nestede ternære operatøren.

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

Produksjon

 Største nummer: 9

I eksemplet ovenfor, legg merke til bruken av den ternære operatøren,

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

Her,

  • (n1> = n2) - første testtilstand som sjekker om n1 er større enn n2
  • (n1> = n3) - andre testbetingelser som utføres hvis den første tilstanden ertrue
  • (n2> = n3) - tredje testbetingelse som utføres hvis den første tilstanden erfalse

Merk : Det anbefales ikke å bruke nestede ternære operatører. Dette er fordi det gjør koden vår mer kompleks.

Interessante artikler...