首頁 >Java >java教程 >按位與 (&) 與邏輯與 (&&):何時使用哪一個?

按位與 (&) 與邏輯與 (&&):何時使用哪一個?

DDD
DDD原創
2024-11-27 09:31:11385瀏覽

Bitwise AND (&) vs. Logical AND (&&): When to Use Which?

位元運算子:& 與&& 和| vs ||

邏輯運算子(&&、|)和位元運算子( &、|)的功能不同。邏輯運算子對布林值進行運算,而位元運算子對二進位值(位元)進行運算。

位元運算子:

  • 位元與(&) : 對兩個二進位值執行位元運算,僅僅在兩個輸入都具有 1的位置產生一個二進位值1s.
  • 按位或(|): 對兩個二進位值執行位元運算,在任一輸入為1 的位置產生一個帶有1 的二進制值。

範例:

考慮以下Java程式碼:

int a = 6; // binary: 110
int b = 4; // binary: 100

// Bitwise AND
int c = a & b; // 110 & 100 = 100 (binary)

// Bitwise OR
int d = a | b; // 110 | 100 = 110 (binary)

輸出:

c: 4 (decimal)
d: 6 (decimal)

條件運算子與位元運算子:

與布林輸入一起使用時, (& 和| 的行為與邏輯運算子(&& 和||)幾乎相同,但有一個關鍵的區別。

因此,當您想避免評估後續條件時,必須使用邏輯運算符。

以上是按位與 (&) 與邏輯與 (&&):何時使用哪一個?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn