Direkomendasikan, 2024

Pilihan Editor

Perbedaan Antara & dan &&

“&” Dan “&&” keduanya adalah operator, yang digunakan untuk mengevaluasi pernyataan bersyarat. & Operator adalah operator yang logis dan juga bitwise. Operator && adalah murni operator Logical. Perbedaan mendasar antara operator & & & adalah bahwa operator & mengevaluasi kedua sisi ekspresi sedangkan, operator && hanya mengevaluasi sisi kiri ekspresi untuk mendapatkan hasil akhir. Mari kita memahami perbedaan lain antara & dan && dengan bantuan bagan perbandingan.

Grafik perbandingan

Dasar untuk Perbandingan&&&
OperatorIni adalah "Operator Bitwise".Ini adalah "Operator Logis".
EvaluasiIni mengevaluasi sisi kiri dan kanan ekspresi.Itu hanya mengevaluasi sisi kiri ekspresi.
Beroperasi padaIni beroperasi pada "Boolean datatype" serta beroperasi pada "bits".Ini hanya beroperasi pada "Boolean datatype".
MenggunakanGunakan untuk memeriksa kondisi logis dan juga digunakan untuk menutupi bit tertentu seperti bit paritas.Hanya digunakan untuk memeriksa kondisi logis.

Definisi & (Bitwise AND)

Operator '&' ini digunakan sebagai keduanya, operator logis (&) dan operator bitwise. Ia bekerja pada boolean dan juga data biner. Ketika & operator digunakan sebagai operator & logis, maka menghasilkan "benar" jika kedua sisi ekspresi evaluasi adalah benar, kalau tidak mengembalikan "salah". Ini memungkinkan kompiler untuk mengevaluasi kedua sisi ekspresi. Yaitu, bahkan jika sisi kiri ekspresi menghasilkan false, itu mengevaluasi sisi kanan ekspresi.

Mari kita pahami ini dengan sebuah contoh.

 int a = 4, b = 5; system.out.println ((a == 6) & (b ++ == 6)); system.out.println ("b =" + b); // output salah b = 5 

Di sini, saat mengevaluasi sisi kiri ekspresi (a == 6), itu menghasilkan false, operator & kemudian mengevaluasi sisi kanan ekspresi (b ++ == 6) sebagai hasilnya, nilai b kenaikan.

Ketika '&' digunakan sebagai "operator bitwise", pertama-tama ia mengubah kedua operan menjadi bentuk biner dan kemudian mengoperasikannya menggunakan & operator, bit-by-bit. Setelah operasi, hasil yang diperoleh, dalam bentuk biner, yang kemudian dikonversi menjadi desimal. Setiap bit yang 0 dalam salah satu dari hasil operan dalam 0. Jika kedua bit dari operan adalah 1, maka bit yang dihasilkan adalah 1. Bitwise & operator diatur oleh tabel kebenaran yang sama seperti oleh operator & logisnya.

Mari kita lihat operasi & operator bitwise.

 int a; a = 3 & 4; // 011 & 100 = 000 system.out.println ("a =" + a); // output a = 0 

Di sini, nilai desimal 3 dan 4 awalnya dikonversikan ke dalam bentuk binernya, dan kemudian operator & bitwise melakukan operasi & pada mereka sedikit demi sedikit. Hasil yang diperoleh adalah dalam bentuk biner, yang kemudian dikonversi ke bentuk desimal lagi.

Definisi && (Hubungan singkat DAN)

Operator && ini berfungsi sepenuhnya sebagai operator yang logis. Ini hanya beroperasi pada tipe data boolean. Ini juga disebut operator hubung singkat. Karena hanya memeriksa sisi kiri ekspresi. Jika sisi kiri ekspresi menghasilkan false, maka itu tidak repot-repot mengevaluasi sisi kanan ekspresi.

Mari kita memahami kerja operator && dengan sebuah contoh.

 int a = 4, b = 5; system.out.println ((a == 6) && (b ++ == 6)); system.out.println ("b =" + b); // output salah b = 4 

Di sini, karena kondisi (a == 6) salah, operator && tidak mengevaluasi ekspresi (b ++ == 6) sebagai hasilnya, nilai b tidak bertambah.

Perbedaan Utama Antara & dan &&

  1. & Operator adalah operator logis dan juga bitwise, karena beroperasi pada boolean maupun data biner, sedangkan operator && hanyalah operator logis karena hanya beroperasi pada tipe data boolean.
  2. Operator & mengevaluasi kedua sisi ekspresi untuk mendapatkan hasil akhir sedangkan, operator && hanya mengevaluasi sisi kiri ekspresi & jika ternyata salah, ia bahkan tidak mengevaluasi sisi kanan ekspresi.

catatan:

Ketika mengevaluasi tipe data boolean, kedua operator menghasilkan "benar" hanya jika kedua operan benar, jika tidak maka akan mengembalikan "salah".

Kesimpulan:

Operator & & &&, keduanya digunakan untuk mengevaluasi kondisi boolean sedangkan, operator & juga digunakan untuk operasi bitwise. Ketika kami perlu mengevaluasi kedua sisi ekspresi & operator digunakan yang lain, kami dapat menggunakan && operator.

Top