Dalam tutorial ini, anda akan belajar mengenai pengendali terner dan penggunaannya di Java dengan bantuan contoh.
Di Java, operator ternary dapat digunakan untuk mengganti pernyataan if… else dalam situasi tertentu. Sebelum anda mengetahui mengenai pengendali ternary, pastikan anda mengunjungi Java jika… pernyataan lain.
Operator Ternary di Jawa
Pengendali ternary menilai keadaan ujian dan melaksanakan sekatan kod berdasarkan hasil keadaan.
Sintaksnya adalah:
condition ? expression1 : expression2;
Di sini, keadaan dinilai dan
- jika keadaannya
true
, ekspresi1 dilaksanakan. - Dan, jika keadaannya
false
, ekspresi2 dijalankan.
Pengendali ternary mengambil 3 operan (keadaan, ekspresi1, dan ekspresi2). Oleh itu, nama operator ternary .
Contoh: Operator Ternary Java
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(); ) )
Keluaran 1
Masukkan markah anda: 75 Anda lulus dalam peperiksaan.
Katakan pengguna memasuki 75 . Kemudian, keadaan marks> 40
dinilai menjadi true
. Oleh itu, hantaran ekspresi pertama ditugaskan untuk menghasilkan.
Keluaran 2
Masukkan markah anda: 24 Anda gagal dalam peperiksaan.
Sekarang, anggap pengguna memasuki 24 . Kemudian, keadaan marks> 40
dinilai menjadi false
. Oleh itu, ungkapan kedua gagal ditugaskan untuk menghasilkan.
Bila hendak menggunakan Operator Ternary?
Di Jawa, operator ternary dapat digunakan untuk menggantikan jenis if… else
pernyataan tertentu . Sebagai contoh,
Anda boleh menggantikan kod ini
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"); ) ) )
dengan
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); ) )
Pengeluaran
Nombor Positif
Di sini, kedua-dua program memberikan output yang sama. Walau bagaimanapun, penggunaan pengendali ternary menjadikan kod kami lebih mudah dibaca dan bersih.
Catatan : Anda hanya boleh menggunakan operator ternary jika pernyataan yang dihasilkan pendek.
Pengendali Ternary Bersarang
Anda juga boleh menggunakan satu operator terner di dalam pengendali ternary yang lain. Ia disebut operator ternary bersarang di Jawa.
Berikut adalah program untuk mencari 3 nombor terbesar menggunakan pengendali ternary bersarang.
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); ) )
Pengeluaran
Bilangan Terbesar: 9
Dalam contoh di atas, perhatikan penggunaan operator ternary,
(n1>= n2) ? ((n1>=n3) ? n1 : n3) : ((n2>= n3) ? n2 : n3);
Di sini,
- (n1> = n2) - keadaan ujian pertama yang memeriksa sama ada n1 lebih besar daripada n2
- (n1> = n3) - keadaan ujian kedua yang dilaksanakan sekiranya keadaan pertama adalah
true
- (n2> = n3) - keadaan ujian ketiga yang dilaksanakan sekiranya keadaan pertama adalah
false
Catatan : Tidak digalakkan menggunakan operator ternary bersarang. Ini kerana ia menjadikan kod kita lebih kompleks.