已采納回答 / 杯酒慰風(fēng)塵_如是很多年
&跟&&都可以進(jìn)行與運(yùn)算,只不過&是位運(yùn)算,&&是邏輯運(yùn)算。而且&&具有“短路”的特性,即當(dāng)&&左邊判斷為false是就不再對右邊的表達(dá)式進(jìn)行運(yùn)算。
2018-06-12
已采納回答 / 慕粉3388790
00000000 00000000 00011111 11001111>>8=? 00000000 00000000 00000000 00011111& 00000000 00000000 00000000 11111111= 00000000 00000000 00000000 00011111
2018-03-16
已采納回答 / jisu_che
0xff就是八個(gè)1的二進(jìn)制數(shù),arr[i]是一個(gè)byte型整數(shù),把其左移到相應(yīng)的高位,再強(qiáng)制轉(zhuǎn)換為interesting類型,并累加到result中
2018-02-07
已采納回答 / Hinstro
A=A^B;B=A^B=(A^B)^B=A^(B^B)=A^0=A;A=A^B=(A^B)^A=(A^A)^B=0^B=B;∵一個(gè)數(shù)“異或”本身時(shí)等于0
2017-12-07
已采納回答 / 諸葛云飛
在本節(jié)中11001111是存放在字節(jié)byte中的,字節(jié)是8位,java中最高位表示符號位,所以byte的取值范圍是-2^7~2^7-1,即1000 0000~0111 1111,十進(jìn)制是-128~127.11001111(看作無符號十進(jìn)制是207),這是補(bǔ)碼,原碼為00110001(看作無符號十進(jìn)制是49),如果你把這個(gè)想象為無符號的(十進(jìn)制也要想象為無符號,即-49為49),那相加為1 0000 0000即2^8=256,即所有的負(fù)值的byte的補(bǔ)碼和源碼想象為無符號的話之和為256
2017-12-01
已采納回答 / Kian_
在計(jì)算機(jī)中數(shù)都是以二進(jìn)制存在的,你也說了2的二進(jìn)制為10,其實(shí)前面省略了,在java中int型占4個(gè)字節(jié),32位,所以2的二進(jìn)制位 0000 0000 0000 0000 0000 0000 0000 0010 老師講的時(shí)候其實(shí)是把前面的0省略了, 這樣你再左移,能力有限,只能跟你這樣解釋 ~.~
2017-07-03
已采納回答 / 慕粉2137351520
轉(zhuǎn)化為數(shù)組時(shí)已經(jīng)定義的是8位的數(shù)組,應(yīng)該是沒問題的。問題在result定義的是整形,而賦值語句是長整形,這個(gè)地方會報(bào)錯(cuò)
2017-04-14
已采納回答 / enthusiastic
可以不加int,我沒加代碼運(yùn)行也沒問題,但是與操作不能少,另外byte強(qiáng)制類型轉(zhuǎn)換也不能少。因?yàn)閕d是int類型,從范圍大的類型到范圍小的類型需要強(qiáng)制類型轉(zhuǎn)換。arr[0]=(byte)((id>>0*8)&0xff);
2017-01-29
已采納回答 / qq_浮夢壹生_03287462
這些算法什么的了解即可,二進(jìn)制是計(jì)算機(jī)能辨識的語言,現(xiàn)在的java語言、c語言都要先編譯成這樣計(jì)算機(jī)能聽得懂的語言的。
2017-01-12