亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Java中的管道(|)運算符

Java中的管道(|)運算符

滄海一幻覺 2019-10-30 13:21:46
我在Java中有以下語句:System.out.println(3|4); 為什么輸出7?
查看完整描述

3 回答

?
蝴蝶不菲

TA貢獻1810條經驗 獲得超4個贊

這是按位或運算。它在二進制級別上進行修改。


             011                     3

in binary: | 100     in decimal:  |  4

             ___                   ___

             111                     7

使用科學模式打開Windows calc。您可以在十進制和二進制(和十六進制)之間切換,并執行按位運算,包括or,and,xor等。


要按位排列或在您的頭部或紙上進行比較,請比較同一序數的每個數字。如果任一數字為1,則該序數的結果將為1。


查看完整回答
反對 回復 2019-10-30
?
慕蓋茨4494581

TA貢獻1850條經驗 獲得超11個贊

運算符|執行“按位或”。如果任一位為1,則兩個位的按位OR的輸出為1;如果兩個位均為0,則輸出為0。兩個數字的按位OR分別對每個位進行按位OR。


這是3|4工作原理:


  3:  00000011

  4:  00000100

--------------

3|4:  00000111 = 7


查看完整回答
反對 回復 2019-10-30
?
慕絲7291255

TA貢獻1859條經驗 獲得超6個贊

二進制表示形式:


 3 = 00000011

 4 = 00000100


| is bitwise OR operator

當您對兩個數字進行或運算時,您將采用二進制表示形式,并且該列的OR結果為1 IFF至少將一列設置為true(1)


所以


00000011

00000100

--------

00000111

然后,列會告訴您該位置的值:


128, 64, 32, 16, 8, 4, 2, 1

所以


128, 64, 32, 16, 8, 4, 2, 1

 0 ,  0,  0,  0, 0, 1, 1, 1  

任何帶有1的列都意味著您要添加該列的值:


4 + 2 + 1 = 7


查看完整回答
反對 回復 2019-10-30
  • 3 回答
  • 0 關注
  • 839 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號