Operator ternar Java (cu exemplu)

În acest tutorial, veți afla despre operatorul ternar și utilizarea acestuia în Java cu ajutorul unor exemple.

În Java, un operator ternar poate fi utilizat pentru a înlocui instrucțiunea if … else în anumite situații. Înainte de a afla despre operatorul ternar, asigurați-vă că vizitați Java dacă declarația … else.

Operator ternar în Java

Un operator ternar evaluează starea testului și execută un bloc de cod pe baza rezultatului stării.

Sintaxa este:

 condition ? expression1 : expression2;

Aici, starea este evaluată și

  • dacă condiția este true, expresia1 este executată.
  • Și, dacă condiția este false, expresia2 este executată.

Operatorul ternar ia 3 operanzi (condiție, expresie1 și expresie2). De aici, numele operator ternar .

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

Ieșire 1

 Introduceți notele: 75 Treceți examenul.

Să presupunem că utilizatorul introduce 75 . Apoi, condiția se marks> 40evaluează la true. Prin urmare, prima trecere de expresie este atribuită rezultatului.

Ieșire 2

 Introduceți notele: 24 Nu reușiți examenul.

Acum, să presupunem că utilizatorul introduce 24 . Apoi, condiția se marks> 40evaluează la false. Prin urmare, a doua expresie fail este atribuită rezultatului.

Când se folosește operatorul ternar?

În Java, operatorul ternar poate fi utilizat pentru a înlocui anumite tipuri de if… elseinstrucțiuni. De exemplu,

Puteți înlocui acest cod

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

cu

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

Ieșire

 Număr pozitiv

Aici, ambele programe oferă aceeași ieșire. Cu toate acestea, utilizarea operatorului ternar face codul nostru mai lizibil și mai curat.

Notă : ar trebui să utilizați operatorul ternar numai dacă declarația rezultată este scurtă.

Operatori ternari imbricati

De asemenea, este posibil să utilizați un operator ternar în interiorul altui operator ternar. Se numește operator ternar imbricat în Java.

Iată un program pentru a găsi cel mai mare dintre 3 numere folosind operatorul ternar imbricat.

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

Ieșire

 Cel mai mare număr: 9

În exemplul de mai sus, observați utilizarea operatorului ternar,

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

Aici,

  • (n1> = n2) - prima condiție de test care verifică dacă n1 este mai mare decât n2
  • (n1> = n3) - a doua condiție de test care se execută dacă prima condiție estetrue
  • (n2> = n3) - a treia condiție de test care se execută dacă prima condiție estefalse

Notă : Nu se recomandă utilizarea operatorilor ternari cuibăriți. Acest lucru se datorează faptului că face codul nostru mai complex.

Articole interesante...