java.util.NoSuchElementException原因及两种解决方法


Posted in Java/Android onJune 28, 2022

java输入流报错:

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、可能是因为迭代器多用了一次,指向空!

例如:

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() 时,游标已经指向下一个位置了,中间多出来一个空值!

2、在函数中,声明了一个 scanner 对象,并且调用了 close 方法,再次启动 scanner 的时候(或者在另一个函数中重新启动 scanner 时),就会遇到异常!

解决方法:

1、类如原因一的可以这样解决,把 iter.next() 赋给一个中间变量:

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() 函数;
或者将Scanner get=new Scanner(System.in); 放在所有函数外层,同时在前面加上static修饰符,并且只在最后使用 iter.close() 函数!

到此这篇关于java.util.NoSuchElementException原因及两种解决方法的文章就介绍到这了,更多相关java.util.NoSuchElementException报错内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Java/Android 相关文章推荐
SpringBoot项目中控制台日志的保存配置操作
Jun 18 Java/Android
详解Java实践之适配器模式
Jun 18 Java/Android
Java各种比较对象的方式的对比总结
Jun 20 Java/Android
SpringCloud Alibaba项目实战之nacos-server服务搭建过程
Jun 21 Java/Android
详解Java实现设计模式之责任链模式
Jun 23 Java/Android
Java常用工具类汇总 附示例代码
Jun 26 Java/Android
logback如何自定义日志存储
Aug 30 Java/Android
Java使用Unsafe类的示例详解
Sep 25 Java/Android
深入解读Java三大集合之map list set的用法
Nov 11 Java/Android
SpringBoot2零基础到精通之异常处理与web原生组件注入
Mar 22 Java/Android
Java详细解析==和equals的区别
Apr 07 Java/Android
Java 超详细讲解十大排序算法面试无忧
Apr 08 Java/Android
Java实现HTML转为Word的示例代码
Jun 28 #Java/Android
Android实现图片九宫格
springboot 全局异常处理和统一响应对象的处理方式
Jun 28 #Java/Android
详解Spring Security如何在权限中使用通配符
Jun 28 #Java/Android
Android RecyclerView实现九宫格效果
Jun 28 #Java/Android
Java 多线程并发FutureTask
Java+swing实现抖音上的表白程序详解
Jun 25 #Java/Android
You might like
PHP合并数组+号和array_merge的区别
2015/06/25 PHP
PHP中set_include_path()函数相关用法分析
2016/07/18 PHP
php生成二维码图片方法汇总
2016/12/17 PHP
PHP+jQuery实现双击修改table表格功能示例
2019/02/21 PHP
收集的网上用的ajax之chat.js文件
2007/04/08 Javascript
DOM_window对象属性之--clipboardData对象操作代码
2011/02/03 Javascript
autoPlay 基于jquery的图片自动播放效果
2011/12/07 Javascript
jquery ajax jsonp跨域调用实例代码
2013/12/11 Javascript
Javascript Memoizer浅析
2014/10/16 Javascript
jQuery select自动选中功能实现方法分析
2016/11/28 Javascript
xmlplus组件设计系列之网格(DataGrid)(10)
2017/05/05 Javascript
bootstrap动态调用select下拉框的实例代码
2018/08/09 Javascript
解决eclipse中没有js代码提示的问题
2018/10/10 Javascript
使用electron制作满屏心特效的示例代码
2018/11/27 Javascript
JavaScript修改注册表实例代码
2020/01/05 Javascript
[05:26]2014DOTA2西雅图国际邀请赛 iG战队巡礼
2014/07/07 DOTA
Python中super()函数简介及用法分享
2016/07/11 Python
Python+Wordpress制作小说站
2017/04/14 Python
PyCharm在win10的64位系统安装实例
2017/11/26 Python
scrapy spider的几种爬取方式实例代码
2018/01/25 Python
使用python实现http及ftp服务进行数据传输的方法
2018/10/26 Python
利用pandas合并多个excel的方法示例
2019/10/10 Python
解决Pycharm中恢复被exclude的项目问题(pycharm source root)
2020/02/14 Python
今天学到的CSS最新技术(与图片背景相关)
2012/12/24 HTML / CSS
html5本地存储 localStorage操作使用详解
2016/09/20 HTML / CSS
AE美国鹰日本官方网站: American Eagle Outfitters
2016/12/10 全球购物
私有程序集与共享程序集有什么区别
2013/04/05 面试题
艺术设计专业个人求职信
2013/09/21 职场文书
物业管理毕业生的自我评价
2014/02/17 职场文书
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
关于读书的演讲稿
2014/05/07 职场文书
2014矛盾纠纷排查调处工作总结
2014/12/09 职场文书
优秀班主任事迹材料
2014/12/16 职场文书
研究生论文答辩开场白
2015/05/27 职场文书
python通过opencv调用摄像头操作实例分析
2021/06/07 Python
HTML常用标签超详细整理
2022/03/19 HTML / CSS