Operator logika
Ada beberapa operator logika biner dan satu operator unary. Argumen untuk semua operator ini adalah literal logika (konstanta), variabel logika, dan ekspresi yang memiliki nilai logika.
Operator:
!
- "negasi", operator unary, mengubah arti menjadi kebalikannya (membalikkan: mengubah kebohongan menjadi kebenaran, dan mengubah kebenaran menjadi kebohongan).
&&
- logika "dan" ("konjungsi", "persimpangan"), operasi biner, mengembalikan nilai benar jika dan hanya jika kedua operan benar.
||
- logika "atau" ("disjungsi", "penyatuan"), operasi biner, mengembalikan nilai sebenarnya ketika setidaknya salah satu operan benar.
Operator logika memiliki prioritas sebagai berikut: negasi, konjungsi, disjungsi. Seperti halnya operator aritmatika, tanda kurung digunakan untuk mengoreksi prioritas. Jika sepasang tanda kurung berada di dalam pasangan tanda kurung lainnya, maka nilai dalam tanda kurung dalam akan dievaluasi terlebih dahulu. Contoh:
boolean a = true;
boolean b;
b = a || true;
b = !b;
System.out.println(b);
a = a || b;
boolean c;
c = a && (a||b);
System.out.println(c);
Di Java, tipe boolean dan numerik tidak dapat dikonversi satu sama lain.
Operator Perbandingan
Kebanyakan operator perbandingan berlaku untuk nilai numerik. Ini semua adalah operator biner yang memiliki dua argumen numerik, namun mengembalikan nilai Boolean.
>
— operator “lebih dari”.
>=
— Operator “lebih besar dari atau sama dengan”.
<
— Operator “kurang dari”.
<=
— Operator “kurang dari atau sama dengan”.
!=
— Operator “tidak sama”.
==
— operator kesetaraan (kesetaraan).
Dua operator terakhir dapat digunakan tidak hanya untuk nilai numerik, tetapi juga, misalnya, untuk nilai logika. Contoh:
boolean m;
m = 5 >= 4;
m = 5 != 5 || false;
boolean w;
w = m == false;
System.out.println(w);
Sangat penting untuk tidak membingungkan operator ekuivalen dengan operator penugasan. Dalam ekspresi yang berisi operator dengan tipe berbeda, operasi aritmatika dilakukan terlebih dahulu, kemudian operasi perbandingan, kemudian operasi logika, dan terakhir penugasan.
Pernyataan if bersyarat
Operator
if
memastikan bahwa suatu instruksi dieksekusi atau dilewati tergantung pada kondisi logis yang ditentukan. Jika kondisinya benar, maka
instruksi dijalankan.
if (condition) инструкция;
Sebagai pengganti suatu instruksi, dapat terdapat instruksi biasa (satu perintah) atau instruksi gabungan (sebuah blok yang berisi beberapa perintah, termasuk pernyataan kondisional lainnya). Contoh (jika nol ditentukan sebagai nilai variabel, pembagian tidak akan dilakukan dan hasilnya tidak akan ditampilkan di layar):
int a = 25;
if (a != 0) System.out.println( 100/a );
int b = 25;
if (b != 0) {
System.out.println( 100/b );
}
Meskipun kode pada contoh pertama terlihat lebih ringkas, hanya pada contoh kedua yang memungkinkan untuk mengeksekusi beberapa instruksi jika kondisinya benar. Operator
if
memiliki format dengan bagian tambahan
else
:
if (condition)
инструкция1;
else
инструкция2;
Jika
kondisinya benar, instruksi1 sederhana atau gabungan akan dieksekusi , dan jika kondisinya salah,
instruksi2 sederhana atau gabungan akan dieksekusi . Contoh:
int a = 0;
if (a != 0) System.out.println( 100/a );
else System.out.println("На нуль делить нельзя");
GO TO FULL VERSION