1. ホーム
  2. プログラミング言語
  3. ジャワ

エラー java.util.NoSuchElementException

2022-01-21 10:47:04

NoSuchElementExceptionです。このエラーはコードの行番号を特定できないため、デバッグが容易ではありません。

今日、ようやく根本的な原因がわかったので、それを共有しましょう。

エラーメッセージです。

 Exception in thread "main" java.util.NoSuchElementException
              at java.util.AbstractList$Itr.next(AbstractList.java:350)
              at sprint.reporter.SprintReporter.process(Unknown Source)
             at sprint.main.SprintMain.main(Unknown Source)
      Java Result: 1

エラーの報告場所です。
何らかのインタレーターが範囲外であると推測されます。

        while(iter.hasNext()) {
              ArrayList<SprintUserStory> undoneUserStoriesList = SprintUtil.getUndoneUserStoriesList(iter.next().getID(),iter.next().getPkey( )); //Root cause
              if(undoneUserStoriesList.size() >0){
                  willdonefeautre--;
               }


訂正します。

根本的な原因は、実際には iter.next() をもう一回使うので、イテレータエラーが報告されることです。

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