java.util.NoSuchElementExceptionの解決策
1970 ワード
最近1つのプロジェクトをして、プロジェクトの実行時、いつもヒント:java.util.NoSuchElementException.エラーはcodeの行番号に具体的にはないので、debug.今日やっと見つけたroot cause,so share it:
エラーメッセージ:
[java] Exception in thread "main"java.util.NoSuchElementException [java] at java.util.AbstractList$Itr.next(AbstractList.java:350) [java] at sprint.reporter.SprintReporter.process(Unknown Source) [java] at sprint.main.SprintMain.main(Unknown Source) [java] Java Result: 1
位置を間違える:あるinteratorが境界を越えたと推測する.
修正:
Root causeは実はiterを1回多く使ったのですnext()なので、反復器エラーを報告しました.
エラーメッセージ:
[java] Exception in thread "main"java.util.NoSuchElementException [java] at java.util.AbstractList$Itr.next(AbstractList.java:350) [java] at sprint.reporter.SprintReporter.process(Unknown Source) [java] at sprint.main.SprintMain.main(Unknown Source) [java] Java Result: 1
位置を間違える:あるinteratorが境界を越えたと推測する.
while(iter.hasNext()) {
ArrayList<SprintUserStory> undoneUserStoriesList = SprintUtil.getUndoneUserStoriesList(iter.next().getID(),iter.next().getPkey()); //Root cause
if(undoneUserStoriesList.size() >0){
willdonefeautre--;
}
修正:
Root causeは実はiterを1回多く使ったのですnext()なので、反復器エラーを報告しました.
while (iter.hasNext()) {
JIRAFeature jirafeaturetemp = iter.next();
ArrayList<SprintUserStory> undoneUserStoriesList = SprintUtil.getUndoneUserStoriesList(jirafeaturetemp.getID(),jirafeaturetemp.getPkey());
if(undoneUserStoriesList.size() >0){
willdonefeautre--;
}