OPERATOR KONDISI
Fungsi Kondisi dan Operator Logika pada Java.
pernyataan bersyarat digunakan untuk melakukan tindakan yang berbeda
berdasarkan kondisi yang berbeda.
jika pernyataan ini bernilai benar (true), blok kode dalam pernyataan akan
dijalankan. Jika pernyataan ternyata salah (false), maka blok kode kedua yang
akan dijalankan
Operator Boolean AND
Operator kondisi AND menghasilkan "true" apabila kedua operandnya
bernilai "true". Jika salah satunya atau keduanya "false",
operator ini menghasilkan "false". Berikut ini tabel kebenaran
operasi AND.
|
Op1 atau Exp1
|
Op2 atau Exp2
|
Hasil
|
|
True
|
True
|
true
|
|
True
|
False
|
false
|
|
False
|
True
|
false
|
|
False
|
False
|
false
|
Operator && akan mengevaluasi Op2 (di sebelah kanan) HANYA jika operand 1 bernilai
"true". Seperti terlihat dari tabel di atas, apabila Op1 (di sebelah
kiri) bernilai "false", hasilnya akan selalu "false" tidak
tergantung pada isi dari Op2.
Dan berikut ini merupakan
contoh sederhana kode program yang menggunakan Logika && (AND).
public class operator_logika {
public static void main(String[] args){
int operand1 = 48;
int operand2 = 70;
/**
* Demonstrasi1 penggunaan Logika AND, hasilnya akan true
* karena kedua operand tersebut bernilai true
*/
boolean test1 = operand1 > 20 && operand2 <= 100;
System.out.println(test1);
/**
* Demonstrasi2 penggunaan Logika AND, hasilnya akan false
* karena ada salah satu operand yang bernilai false
*/
boolean test2 = operand1 < 20 && operand2 <= 100;
System.out.println(test2);
}
}
Hasilnya akan seperti berikut ini.

Logika & (boolean logika AND)
Logika & hampir sama dengan Logika && , perbedaannya adalah bahwa && mensupports short-circuit evaluations (atau evaluasi perbagian), sementara operator & tidak. Contohnya seperti berikut ini.
public class operator_logika {
public static void main(String[] args){
int operand1 = 100;
int operand2 = 500;
//Demonstrasi && (Logika AND)
boolean test1 = (operand1 > 200) && (operand2++ != 400);
System.out.println(operand1);
System.out.println(operand2);
System.out.println(test1);
//Demonstrasi & (boolean Logika AND)
boolean test2 = (operand1 > 200) & (operand2++ != 400);
System.out.println(operand1);
System.out.println(operand2);
System.out.println(test2);
}
}
Jalankan program tersebut, maka hasilnya akan seperti ini.

Operator Kondisi OR
Operator kondisi OR menghasilkan "true" jika salah satu
operandnya bernilai "true". Jika keduanya "false", operator
ini menghasilkan "false". Berikut ini table kebenaran oeprasi OR.
|
Op1 atau Exp1
|
Op2 atau Exp2
|
Hasil
|
|
True
|
true
|
true
|
|
True
|
false
|
true
|
|
False
|
true
|
true
|
|
False
|
false
|
false
|
Operator || akan mengevaluasi Op2 (di sebelah kanan) HANYA jika operand 1
bernilai "false". Seperti terlihat dari tabel di atas, apabila Op1
(di sebelah kiri) bernilai "true", hasilnya akan selalu
"true" tidak tergantung pada isi dari Op2.
Operator or (|)
Operator ini juga digunakan dalam operasi bitwise jika
operannya bertipa angka. Jika operannya berupa boolean, operator ini akan
menghasilkan nilai true, bila salah satu atau kedua operannya mengembalikan
nilai true. Operator ini juga hanya akan mengembalikan nilai false bila kedua
operannya bernilai false, seperti contoh berikut ini
package
com.wordpress.bmadi.moreoperator;public
class DemoLogika4 { public
static void main(String[] args) { String
nama = null; boolean
hasil = (nama == null) | (nama !=
null); System.out.println("Hasilnya
adalah : " + hasil); }} |
Kode program diatas
artinya : Mendeklarasikan class DemoLogika4, yang
didalamnya juga diimplementasi operator logika. Bila kode program diatas
dieksekusi, keluaran yang dihasilkan seperti berikut
Hasilnya adalah : true |
Ketika kode program
diatas dieksekusi, keluaran yang dihasilkan adalah true. Karena operan disebelah kiri
mengembalikan nilai true dan operan disebelah kanan mengembalikan nilai false.
Operator ini juga hanya akan mengembalikan nilai false bila kedua buah operan
bernilai false.
Operator singkat or(||)
Aturan yang ada pada operator atau juga berlaku untuk
jenis operator ini. Yang membedakan keduanya adalah apabila operator atau kedua
operannya akan tetap dieksekusi walaupun sudah diketahui nilai dari operan
sebelah kanan bernilai true, apapun nilai operan disebelah kanan pastihasilnya
true juga.
Sedangkan bila dalam operator singkat atau, bila
operan sebelah kiri mengembalikan nilai true, maka operan disebelah kanan tidak
akan dieksekusi dan nilai true dikembalikan sebagai hasil operasinyua. Untuk
lebih memahami, mari diperhatikan contoh berikut ini
package
com.wordpress.bmadi.moreoperator;public
class DemoLogika5 { public
static void main(String[] args) { String
nama = null; boolean
hasil = (nama == null) || (nama
!= null); System.out.println("Hasilnya
adalah : " + hasil); }} |
Kode program diatas
artinya : Mendeklarasikan class DemoLogika5, yang
didalamnya juga diimplementasi operator logika. Bila kode program diatas
dieksekusi, keluaran yang dihasilkan seperti berikut
Hasilnya adalah : true |
Ketika
kode program diatas dieksekusi, keluaran yang dihasilkan adalah true. Hal ini
terjadi karena operan disebelah kiri mengembalikan nilai true dan operan
disebelah kanan tidak dieksekusi.
Tidak ada komentar:
Posting Komentar