第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

Java: BufferedOutputStream里的write(int b)如何理解?

Java: BufferedOutputStream里的write(int b)如何理解?

喵喵時光機(jī) 2019-02-16 17:33:20
源碼如下: public synchronized void write(int b) throws IOException { if (count >= buf.length) { flushBuffer(); } buf[count++] = (byte)b; } 為何寫字節(jié)要用int類型? int是四個字節(jié),byte是一個字節(jié),為何(byte)b?
查看完整描述

3 回答

?
當(dāng)年話下

TA貢獻(xiàn)1890條經(jīng)驗 獲得超9個贊

根據(jù)這篇博文來看

1個字節(jié)占8位,既然實際返回的是byte類型的數(shù)據(jù),那么強(qiáng)制類型轉(zhuǎn)換int型截取低8位,對數(shù)據(jù)也不會造成影響。
這是因為在int強(qiáng)制轉(zhuǎn)換為byte型數(shù)據(jù)時,會產(chǎn)生一個-128~127的有符號字節(jié),而不是read方法返回的0~255的無符號字節(jié)。

個人不負(fù)責(zé)任猜測應(yīng)該是為了寫入有符號字節(jié)。

因為

System.out.println((byte) 128); // 輸出 -128
查看完整回答
反對 回復(fù) 2019-03-01
  • 3 回答
  • 0 關(guān)注
  • 1035 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號