淺談java的byte數組的分歧寫法。本站提示廣大學習愛好者:(淺談java的byte數組的分歧寫法)文章只能為提供參考,不一定能成為您想要的結果。以下是淺談java的byte數組的分歧寫法正文
(因為篇幅緣由論述的不敷具體迷信,不喜勿噴)。
常常看到java中對byte數組的分歧界說,粗略整頓的一下:
一個字節(byte)=8位(bit),“byte數組”外面全體是“byte”,即每個byte都可以用二進制、十六進制、十進制來表現。
二進制:00010110----->0*2^8 + 0*2^7 + 0*2^6 + 1*2^5 + 0*2^4 + 1*2^3 + 1*2^2 + 0*2^1 + 0*2^0 = 22
16進制: 0x16 ------->1*16^1 + 6*16^0 = 22
十進制:22
所以上面三者等價:
byte [] aa = {00010110, 01010010, 10111000};
byte [] aa = {0x16, 0x52, 0xB8};
byte [] aa = {22, 82, 184};
在Eclipse斷點調試的時刻,看到的byte數組內容都是用十進制表現。有時會看到正數,由於字節數組中跨越127的數都邑以正數的情勢顯示。
我們曉得java讀取的方法只支撐字節數組,而byte是8位,所以不克不及跨越127,假如跨越就會溢出,以正數的情勢顯示。
以上這篇淺談java的byte數組的分歧寫法就是小編分享給年夜家的全體內容了,願望能給年夜家一個參考,也願望年夜家多多支撐。