欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

java.util.NoSuchElementException原因及兩種解決方法

 更新時(shí)間:2022年06月28日 14:52:12   作者:星漢空兮  
本文主要介紹了java.util.NoSuchElementException原因及兩種解決方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

java輸入流報(bào)錯(cuò):

Exception in thread "main" java.util.NoSuchElementException
    at java.base/java.util.Scanner.throwFor(Unknown Source)
    at java.base/java.util.Scanner.next(Unknown Source)
    at java.base/java.util.Scanner.nextInt(Unknown Source)
    at java.base/java.util.Scanner.nextInt(Unknown Source)

原因分析:

1、可能是因?yàn)榈鞫嘤昧艘淮危赶蚩眨?/p>

例如:

Scanner iter=new Scanner(System.in);
while(iter.hasNext()) {
    ArrayList<SprintUserStory> undoneUserStoriesList = SprintUtil.getUndoneUserStoriesList(iter.next().getID(),iter.next().getPkey()); 
    if(undoneUserStoriesList.size() >0){
        willdonefeautre--;
     }
}

分析:第二次使用 iter.next() 時(shí),游標(biāo)已經(jīng)指向下一個(gè)位置了,中間多出來一個(gè)空值!

2、在函數(shù)中,聲明了一個(gè) scanner 對(duì)象,并且調(diào)用了 close 方法,再次啟動(dòng) scanner 的時(shí)候(或者在另一個(gè)函數(shù)中重新啟動(dòng) scanner 時(shí)),就會(huì)遇到異常!

解決方法:

1、類如原因一的可以這樣解決,把 iter.next() 賦給一個(gè)中間變量:

Scanner iter=new Scanner(System.in);
while (iter.hasNext()) {
    JIRAFeature jirafeaturetemp = iter.next();
    ArrayList<SprintUserStory> undoneUserStoriesList = SprintUtil.getUndoneUserStoriesList(jirafeaturetemp.getID(),jirafeaturetemp.getPkey());
     if(undoneUserStoriesList.size() >0){
        willdonefeautre--;
     }
}

2、類如原因二的可以這樣解決:

使用多次Scanner get=new Scanner(System.in); 但是只在最后使用 iter.close() 函數(shù);
或者將Scanner get=new Scanner(System.in); 放在所有函數(shù)外層,同時(shí)在前面加上static修飾符,并且只在最后使用 iter.close() 函數(shù)!

到此這篇關(guān)于java.util.NoSuchElementException原因及兩種解決方法的文章就介紹到這了,更多相關(guān)java.util.NoSuchElementException報(bào)錯(cuò)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論