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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

while((bytes = in.read(buf,0,buf.length))!=-1)這里有疑問(wèn)

while((bytes = in.read(buf,0,buf.length))!=-1)

搞不明白,假如文件100字節(jié),數(shù)組buf容量80字節(jié),第一次讀完的時(shí)候bytes等于80,然后執(zhí)行完后邊的代碼,程序如何回到while循壞呢?

不是已經(jīng)這樣了嗎 bytes=80!=-1,不應(yīng)該是一個(gè)死循環(huán)嗎?有些理解不了這個(gè)

而且就算我現(xiàn)在當(dāng)做能明白這個(gè)循環(huán)為什么能進(jìn)行了,可buf數(shù)組在第一次循環(huán)的時(shí)候已經(jīng)被填滿(mǎn)了呀,第二次去循環(huán)的時(shí)候,是把剩下的20字節(jié)覆蓋進(jìn)去嗎?而且in.read(buf,0,buf.length))這里第二個(gè)參數(shù)是“0”,也沒(méi)有看出來(lái)任何地方對(duì)這個(gè)參數(shù)有修改,程序怎么知道應(yīng)該是從81位開(kāi)始讀呢?


正在回答

3 回答


    • 讀入緩沖區(qū)的總字節(jié)數(shù),如果沒(méi)有更多的數(shù)據(jù),因?yàn)槲募慕Y(jié)尾已經(jīng)到達(dá), -1 。?

剛查了下API文檔,一樓的回復(fù)太給力了,讓我也懂了

0 回復(fù) 有任何疑惑可以回復(fù)我~
/**
?*?Reads?a?byte?of?data?from?this?input?stream.?This?method?blocks
?*?if?no?input?is?yet?available.
?*
?*?@return?????the?next?byte?of?data,?or?<code>-1</code>?if?the?end?of?the
?*?????????????file?is?reached.
?*?@exception??IOException??if?an?I/O?error?occurs.
?*/
public?int?read()?throws?IOException?{
????return?read0();
}

read()方法返回的是下一個(gè)字節(jié)

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

in.read(buf,0,buf.length),這個(gè)方法返回的是它讀取到的字節(jié)個(gè)數(shù)!

正如你假設(shè)的,文件100字節(jié),buf容量80字節(jié):

第一次讀取的時(shí)候是返回80;

第二次進(jìn)入while的時(shí)候,文件讀取的字節(jié)是從第81個(gè)字節(jié)開(kāi)始(讀取的時(shí)候文件有個(gè)指針一邊讀一邊移動(dòng)的,前面老師講過(guò)),就是說(shuō)文件還剩下20個(gè)字節(jié)可讀,所以這時(shí)候返回的字節(jié)是20;

第三次進(jìn)入while的時(shí)候,文件已經(jīng)沒(méi)有內(nèi)容可讀了,所以返回的是-1;

這時(shí)候就跳出了while!

純手打!望采納!

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

zxj2333

問(wèn)一下,在第二次的時(shí)候,文件只剩下20個(gè)字節(jié)可以讀,但是當(dāng)read()方法讀到第20個(gè)字節(jié)時(shí),檢查到這是流的結(jié)尾時(shí),不是返回-1嗎?為什么是20
2018-10-19 回復(fù) 有任何疑惑可以回復(fù)我~
#2

慕容6072474 回復(fù) zxj2333

你那個(gè)應(yīng)該是只符合單字節(jié)的規(guī)則
2018-12-01 回復(fù) 有任何疑惑可以回復(fù)我~
#3

我愛(ài)孫佳怡

牛逼,瞬間懂了
2019-05-20 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

while((bytes = in.read(buf,0,buf.length))!=-1)這里有疑問(wèn)

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

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

幫助反饋 APP下載

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

公眾號(hào)

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