Penggunaan Operator Kondisi (?:) Pada Java


Assalamualaikum Warahmatullahi Wabarakatuh. Setelah memahami penggunaan boolean pada java, Kali ini saya akan berbagi tutorial mengenai operator kondisi (?:). Operator ini identik dengan simbol ? (Tanya) dan : (Titik Dua). Kondisi(?:) merupakan operator ternary, yang berarti bahwa operator ini mempunyai 3 argumen yang membentuk suatu kejadian/expresi, Operator ini hampir mirip dengan statement if-else.


Struktur pernyataan Operator Kondisi(?:), seperti berikut ini.

expresi1?epresi2:expresi3

Dimana expresi1 merupakan pernyataan boolean yang memiliki hasil salah satunya berupa true atau false. expresi2 akan di eksekusi jika nilai boolean pada expresi1 bernilai true dan expresi3 akan dijalankan jika nilai boolean pada expresi1 bernilai false.

Sebagai contoh, kita akan mencoba membuat program menggunakan operator kondisi (?:), perhatikan kode program berikut ini.

public class operator_kondisi {
    public static void main(String[] args){
        int score = 80;
        String hasil;
        hasil = score > 70?"Lulus":"Tidak Lulus";
        System.out.println(hasil);
    }
}

Output dari program tersebut akan menjadi seperti ini.


Untuk contoh yang kedua, kita akan menggunakan tipe data Integer dan char, seperti berikut ini.

public class operator_kondisi {
    public static void main(String[] args){
        int score = 0;
        char jawaban = 'B';
        score = (jawaban == 'B')?100:50;
        System.out.println("Nilai yang didapat: "+score);
    }
}

Hasilnya akan seperti ini.


Perhatikan baik-bain, untuk contoh yang ketiga. Menghitung nilai tertinggi menggunakan kondisi (?:). Seperti berikut ini.

public class operator_kondisi {
    public static void main(String[] args){
        int IPS = 50;
        int MTK = 440;
        int PLH = 100;
        int tertinggi;
        
        tertinggi = (IPS > MTK)?IPS:(MTK > PLH)?MTK:(PLH > IPS)?PLH:IPS;
        System.out.println("Nilai Tertinggi: "+tertinggi);
    }
}

Jalankan program tersebut, maka hasilnya akan seperti ini.


Penjelasan

1) Program akan mengevaluasi pernyataan yang terdapat pada (IPS > MTK) jika pernyataan tersebut bernilai true, variable tertinggi akan mengambil nilai/value yang terdapat pada simbol ?IPS dan jika bernilai false, program akan mengevaluasi peryataan yang terdapat pada simbol :(MTK > PLH).

2) Jika pernyataan yang terdapat pada :(MTK > PLH) bernilai true, variable tertinggi akan mengambil nilai/value yang terdapat pada simbol ?MTK dan jika bernilai false, program akan mengevaluasi peryataan yang terdapat pada simbol :(PLH > IPS).

3) jika :(PLH > IPS) bernilai true, variable tertinggi akan mengambil nilai/value yang terdapat pada simbol ?PLH dan jika bernilai false, nilai yang ada pada IPS yang akan di ambil.

Sekian ulasan saya mengenai Operator Kondisi(?:) pada Java, mohon maaf bila ada kesalahan kata atau tutorial yang saya buat terlalu ribet dikarenakan saya masih belajar, jangan lupa untuk subscribe dan isi kolom komentar di bawah ini jika ada yang ingin kalian tanyakan kepada saya, sekian, Wassalamualaikum Warahmatullahi Wabarakatuh.

Wildan M Athoillah
Wildan M Athoillah Blogger dan spesialis pembuat aplikasi android.