Šajā apmācībā jūs uzzināsit par trīskāršo operatoru un tā izmantošanu Java ar piemēru palīdzību.
Java valodā trīskāršo operatoru var izmantot, ja noteiktās situācijās aizstāj paziņojumu if… else. Pirms uzzināt par trīskāršo operatoru, pārliecinieties, vai esat apmeklējis Java, ja vēl citātu.
Ternārais operators Java
Trīskāršais operators novērtē testa nosacījumu un izpilda koda bloku, pamatojoties uz nosacījuma rezultātu.
Tās sintakse ir:
condition ? expression1 : expression2;
Šeit tiek novērtēts stāvoklis un
- ja nosacījums ir
true
, tiek izpildīta izteiksme1. - Un, ja nosacījums ir
false
, tiek izpildīta izteiksme2.
Trīskāršais operators aizņem 3 operandus (nosacījums, izteiksme1 un izteiksme2). Tādējādi nosaukums trīskāršais operators .
Piemērs: 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(); ) )
1. izeja
Ievadiet savas atzīmes: 75 jūs nokārtojat eksāmenu.
Pieņemsim, ka lietotājs ievadīs 75 . Pēc tam stāvoklis tiek marks> 40
novērtēts līdz true
. Tādējādi rezultātam tiek piešķirta pirmā izteiksmes caurlaide.
2. izeja
Ievadiet savas atzīmes: 24 Jūs neizturat eksāmenu.
Pieņemsim, ka lietotājs ievadīs 24 . Pēc tam stāvoklis tiek marks> 40
novērtēts līdz false
. Tādējādi rezultātam tiek piešķirta otrā izteiksme neizdoties.
Kad lietot trīskāršo operatoru?
Java valodā trīskāršo operatoru var izmantot, lai aizstātu noteiktus if… else
paziņojumu veidus . Piemēram,
Jūs varat aizstāt šo kodu
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"); ) ) )
ar
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); ) )
Rezultāts
Pozitīvs skaitlis
Šeit abas programmas nodrošina vienādu izvadi. Tomēr trīskāršā operatora izmantošana padara mūsu kodu lasāmāku un tīrāku.
Piezīme . Trīskāršo operatoru izmantojiet tikai tad, ja iegūtais paziņojums ir īss.
Ligzdoti trīskāršu operatori
Ir iespējams arī izmantot vienu trīskāršu operatoru cita trīskāršā operatora iekšienē. To sauc par ligzdoto trīskāršo operatoru Java.
Šeit ir programma, lai atrastu lielāko no 3 numuriem, izmantojot ligzdoto trīskāršo operatoru.
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); ) )
Rezultāts
Lielākais skaitlis: 9
Iepriekš minētajā piemērā ievērojiet trīslīmeņu operatora izmantošanu,
(n1>= n2) ? ((n1>=n3) ? n1 : n3) : ((n2>= n3) ? n2 : n3);
Šeit,
- (n1> = n2) - pirmais testa nosacījums, kas pārbauda, vai n1 ir lielāks par n2
- (n1> = n3) - otrais testa nosacījums, kas tiek izpildīts, ja pirmais nosacījums ir
true
- (n2> = n3) - trešais testa nosacījums, kas tiek izpildīts, ja pirmais nosacījums ir
false
Piezīme . Nav ieteicams izmantot ligzdotus trīslīmeņu operatorus. Tas ir tāpēc, ka tas padara mūsu kodu sarežģītāku.