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

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

為什么拿字節(jié)個數(shù)和-1進(jìn)行比較

視頻第7分30開始,老師開始考慮字節(jié)數(shù)組不夠存放的情況。這里的判斷條件是:

(bytes = in.read(buf, 0, buf.length))!=-1;既然前面說了bytes返回的是字節(jié)個數(shù)。

那么我認(rèn)為比較條件不該是這樣么?

(bytes = in.read(buf, 0, buf.length))> 20*1024

正在回答

2 回答

bytes是讀取到字節(jié)的長度,如果因為流位于文件末尾而沒有 可用 的字節(jié),則返回值 -1。(bytes = in.read(buf, 0, buf.length))> 20*1024,如果這樣設(shè)置的話,后面已經(jīng)沒有可用的字節(jié)還是會繼續(xù)讀入,這樣會異常吧。

0 回復(fù) 有任何疑惑可以回復(fù)我~

"因為流位于文件末尾而沒有 可用 的字節(jié),則返回值 -1。"這個很關(guān)鍵,老師貌似沒這么說,還是我聽漏了?只知道他說過指針讀取到文件末尾會返回-1??礃幼舆@個“文件末尾返回-1”是適用所有IO流中的方法的咯

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

pergod

對,可以查看一下API文檔,任何繼承了InputStream的類都是這樣讀入的
2016-12-22 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

為什么拿字節(jié)個數(shù)和-1進(jìn)行比較

我要回答 關(guān)注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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