課程
/后端開發(fā)
/Java
/文件傳輸基礎(chǔ)——Java IO流
為什么單字節(jié)讀取不用&0xff?? 批量讀取時(shí)卻要用呢?? 不明白? 求解
2016-06-02
源自:文件傳輸基礎(chǔ)——Java IO流 4-1
正在回答
是這樣的,
單字節(jié)讀取時(shí)Integer.toHexString(b)
read 是無符號(hào)讀取的,就是讀取的時(shí)候,假如讀取的是一個(gè)字節(jié) 例如 11111111 ?b的值就是 00000000 00000000
00000000 11111111;
批量讀取時(shí)Integer.toHexString(buf[i]&0xff) 這個(gè)函數(shù)的參數(shù)是int類型的
buf 是一個(gè)字節(jié)數(shù)組。 假如buf[1]=11111111, 這個(gè) 會(huì)提升為 11111111 11111111 11111111 11111111,
這樣兩個(gè)int的字節(jié)碼就不同了
buf[1]&0xff (00000000 00000000 00000000 11111111) 這樣就一致了
昵稱是JaVa
因?yàn)槊看巫x取僅僅讀取一個(gè)字節(jié)也就是8位,而單字節(jié)就只有8位不需要&0xff,然而批量讀取時(shí)就需要先讀取低八位,再讀取高8位
Java中一個(gè)字節(jié)是八位么???
單字節(jié)說明就只有8位,就直接是低八位了呀!就不需要&0xff了啊
舉報(bào)
為您介紹IO流的使用,以及對(duì)象的序列化和反序列化的內(nèi)容
3 回答老師的System.out.print(Integer.toHexString(buf[i]&0xff)+" ");句中為什么要加0xff?
2 回答有朋友知道這句什么意思?System.out.print(Integer.toHexString(buf[i] & 0xff)+" "); 尤其是buf[i] & 0xff)這句.
4 回答求教批量讀取
2 回答批量讀取問題
2 回答在文件用數(shù)組長度進(jìn)行批量讀取時(shí),每一次讀取的字節(jié)個(gè)數(shù)不相等
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號(hào)-11 京公網(wǎng)安備11010802030151號(hào)
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動(dòng)學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號(hào)
2016-10-31
是這樣的,
單字節(jié)讀取時(shí)Integer.toHexString(b)
read 是無符號(hào)讀取的,就是讀取的時(shí)候,假如讀取的是一個(gè)字節(jié) 例如 11111111 ?b的值就是 00000000 00000000
00000000 11111111;
批量讀取時(shí)Integer.toHexString(buf[i]&0xff) 這個(gè)函數(shù)的參數(shù)是int類型的
buf 是一個(gè)字節(jié)數(shù)組。 假如buf[1]=11111111, 這個(gè) 會(huì)提升為 11111111 11111111 11111111 11111111,
這樣兩個(gè)int的字節(jié)碼就不同了
buf[1]&0xff (00000000 00000000 00000000 11111111) 這樣就一致了
2016-07-09
因?yàn)槊看巫x取僅僅讀取一個(gè)字節(jié)也就是8位,而單字節(jié)就只有8位不需要&0xff,然而批量讀取時(shí)就需要先讀取低八位,再讀取高8位
2016-06-30
Java中一個(gè)字節(jié)是八位么???
2016-06-02
單字節(jié)說明就只有8位,就直接是低八位了呀!就不需要&0xff了啊