Rumah >Java >JavaAsas >Apakah perbezaan antara & dan && dalam java

Apakah perbezaan antara & dan && dalam java

青灯夜游
青灯夜游asal
2023-01-06 15:07:008835semak imbas

Perbezaan antara & dan && dalam Java: 1. Apabila operator && beroperasi, apabila nilai ungkapan pertama adalah palsu, ungkapan kedua tidak akan dikira manakala & operator Kemudian kedua-dua ungkapan akan menjadi dilaksanakan tanpa mengira sama ada nilai ungkapan pertama adalah benar. 2. Operator & boleh digunakan sebagai operator bitwise, tetapi operator && tidak boleh.

Apakah perbezaan antara & dan && dalam java

Persekitaran pengendalian tutorial ini: sistem Windows 7, versi Java 8, komputer DELL G3.

Dalam Java, && dan & adalah kedua-dua pengendali logik yang mewakili "dan", yang bermaksud dan. Kesemuanya adalah benar apabila ungkapan di kedua-dua belah adalah benar, dan keseluruhan hasil operasi adalah benar, jika tidak ia adalah palsu. Seterusnya, dalam artikel, kami akan memperkenalkan perbezaan antara keduanya secara terperinci.

Perbezaan antara & dan &&

& dan && ialah kedua-dua pengendali logik, tetapi && juga dipanggil pengendali litar pintas. Kerana apabila nilai ungkapan pertama adalah palsu, ungkapan kedua tidak akan dinilai

dan & akan melaksanakan kedua-dua ungkapan tanpa mengira sama ada ungkapan pertama adalah benar. Selain itu, & juga boleh digunakan sebagai operator bitwise Apabila ungkapan pada kedua-dua belah & bukan jenis Boolean, & mewakili operasi bitwise.

&& operasi

int i = 0;        
if(i == 3  && ++i > 0 )
 {
 }
System.out.println("i = " + i);

Hasilnya ialah:

i = 0

Punca: Ungkapan kedua tidak dilaksanakan

& Hasil daripada operasi

 int i = 0;        
 if(i == 3  & ++i > 0 )
  { 
  }
  System.out.println("i = " + i);

ialah:

i = 1

Ungkapan kedua dilaksanakan

Pengetahuan lanjutan: Pengendali logik

Pengendali logik menyambungkan ungkapan hubungan setiap operasi untuk membentuk ungkapan logik yang kompleks untuk menentukan sama ada ungkapan itu ditubuhkan, keputusan penghakiman adalah benar atau salah.

Pengendali logik beroperasi pada pembolehubah Boolean, dan keputusannya juga Boolean, seperti yang ditunjukkan dalam Jadual 1.

表 1 逻辑运算符的用法、含义及实例
运算符 用法 含义 说明 实例 结果
&& a&&b 短路与 ab 全为 true 时,计算结果为 true,否则为 false。 2>1&&36f9fd42e5eee65e8aa3bd4a04a53fda64 false
! !a 逻辑非 a 为 true 时,值为 false,a 为 false 时,值为 true !(2>4) true
| a|b 逻辑或 ab 全为 false 时,计算结果为 false,否则为 true 1>2|3>5 false
& a&b 逻辑与 ab 全为 true 时,计算结果为 true,否则为 false 1<2&3<5 true
  • || >

    Nota: Litar pintas DAN (&&) dan litar pintas ATAU (||) boleh menggunakan kaedah pengiraan optimum untuk meningkatkan kecekapan. Dalam pengaturcaraan sebenar, litar pintas DAN dan litar pintas ATAU harus diberi keutamaan.
Pembolehubah atau ungkapan yang hasilnya boolean boleh digabungkan menjadi ungkapan logik melalui pengendali logik. Operator logik &&, || dan ! Lakukan operasi logik mengikut Jadual 2.

逻辑运算符的优先级为:!运算级别最高,&& 运算高于 || 运算。!运算符的优先级高于算术运算符,而 && 和 || 运算则低于关系运算符。结合方向是:逻辑非(单目运算符)具有右结合性,逻辑与和逻辑或(双目运算符)具有左结合性。

下面是一些使用逻辑运算符的示例。

x>0 && x<=100    // 第一行语句
y%4==0 || y%3==0    // 第二行语句
!(x>y)    // 第三行语句

其中,第一行语句用于判断 x 的值是否大于 0 且小于或等于 100,只有两个条件同时成立结果才为真(true)。第二行语句用于判断 y 的值是否能被 4 或者 3 整除,只要有一个条件成立,结果就为真(true)。第三行语句先比较 x 和 y,再将比较结果取反,即如果 x 大于 y 成立,则结果为假(false),否则为真(true)。

更多编程相关知识,请访问:编程教学!!

Atas ialah kandungan terperinci Apakah perbezaan antara & dan && dalam java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn