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

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

使用 hasNextLine() 方法檢查多行

使用 hasNextLine() 方法檢查多行

紫衣仙女 2021-12-18 15:10:55
我在使用該Scanner.hasNextLine()方法時遇到了問題。這是我的代碼:while(scan.hasNextLine()) {              definition = scan.nextLine();     otherInfo = scan.nextLine();     link = scan.nextLine();}如您所見,在 Scanner 檢查是否還有另一行之后,我將三行作為輸入。問題出現(xiàn)在我的文件末尾。 Scanner 掃描文件的最后一行并執(zhí)行 while 循環(huán),即使沒有足夠的行來完成循環(huán)而不拋出NoSuchElementFound異常。有什么方法可以使用該Scanner.hasNextLine()方法檢查文件中是否還有多行?感謝您的時間和您可以提供的任何幫助。
查看完整描述

3 回答

?
素胚勾勒不出你

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

一種解決方案是將變量放入諸如 an 之類的數(shù)據(jù)結(jié)構(gòu)中ArrayList,然后執(zhí)行以下操作:


ArrayList<String> arr = new ArrayList<>();

while(scan.hasNextLine()) {         

    arr.add(scan.nextLine());

}

這樣您就可以確保有下一行并且您不必對分配變量進(jìn)行硬編碼。


那么arr[0]將會是definition,arr[1]將會是otherInfo,arr[2]將會是link


查看完整回答
反對 回復(fù) 2021-12-18
?
慕標(biāo)琳琳

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

你需要檢查是否有對下一行otherInfo和link,在檢查definition中做到while (scan.hasNextLine()):


while(scan.hasNextLine()) {

    definition = scan.nextLine();


    if (scan.hasNextLine()) {

        otherInfo = scan.nextLine();


        if (scan.hasNextLine())

            link = scan.nextLine();

    }

}

但問題是你從這個循環(huán)中得到了什么?

只是閱讀行而不保存它們,或打印它們?

循環(huán)在某個時刻結(jié)束,3 個變量有它們的最后 3 個值。


查看完整回答
反對 回復(fù) 2021-12-18
?
慕尼黑的夜晚無繁華

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

你的文件總是有你關(guān)心的三件事嗎?如果是這樣,請使用 for 循環(huán)而不是 while 循環(huán)來簡化問題。這樣你就不必?fù)?dān)心尾隨的換行符(這是常見的)把你搞砸了。


for(int i = 0; i < 3; i++) {         

    definition = scan.nextLine();

    otherInfo = scan.nextLine();

    link = scan.nextLine();

}


查看完整回答
反對 回復(fù) 2021-12-18
  • 3 回答
  • 0 關(guān)注
  • 286 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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