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 相关文章推荐
Spring Data JPA使用JPQL与原生SQL进行查询的操作
Jun 15 Java/Android
Java用自带的Image IO给图片添加水印
Jun 15 Java/Android
新手初学Java网络编程
Jul 07 Java/Android
Java使用jmeter进行压力测试
Jul 09 Java/Android
Java org.w3c.dom.Document 类方法引用报错
Aug 07 Java/Android
Java 在生活中的 10 大应用
Nov 02 Java/Android
spring cloud eureka 服务启动失败的原因分析及解决方法
Mar 17 Java/Android
关于EntityWrapper的in用法
Mar 22 Java/Android
springboot入门 之profile设置方式
Apr 04 Java/Android
Java数组详细介绍及相关工具类
Apr 14 Java/Android
Java后端 Dubbo retries 超时重试机制的解决方案
Apr 14 Java/Android
Mybatis-plus配置分页插件返回统一结果集
Jun 21 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防注
2007/01/15 PHP
PHP字符串 ==比较运算符的副作用
2009/10/21 PHP
Codeigniter实现智能裁剪图片的方法
2014/06/12 PHP
php正则preg_replace_callback函数用法实例
2015/06/01 PHP
php图形jpgraph操作实例分析
2017/02/22 PHP
PHP PDO数据库操作预处理与注意事项
2019/03/16 PHP
php封装的pdo数据库操作工具类与用法示例
2019/05/08 PHP
JS backgroundImage控制
2009/05/19 Javascript
JS小游戏之极速快跑源码详解
2014/09/25 Javascript
原生javascript实现Tab选项卡切换功能
2015/01/12 Javascript
nodejs开发微博实例
2015/03/25 NodeJs
JavaScript返回网页中锚点数目的方法
2015/04/03 Javascript
纯javascript实现四方向文本无缝滚动效果
2015/06/16 Javascript
快速学习JavaScript的6个思维技巧
2015/10/13 Javascript
NodeJS和BootStrap分页效果的实现代码
2016/11/07 NodeJs
js仿网易表单及时验证功能
2017/03/07 Javascript
JS/jquery实现一个网页内同时调用多个倒计时的方法
2017/04/27 jQuery
浅析Vue项目中使用keep-Alive步骤
2018/07/27 Javascript
分享5个好用的javascript文件上传插件
2018/09/16 Javascript
VUE-cli3使用 svg-sprite-loader
2018/10/20 Javascript
JS散列表碰撞处理、开链法、HashTable散列示例
2019/02/08 Javascript
基于vue、react实现倒计时效果
2019/08/26 Javascript
Node.js 实现抢票小工具 &amp; 短信通知提醒功能
2019/10/22 Javascript
python和ruby,我选谁?
2017/09/13 Python
python Xpath语法的使用
2020/11/26 Python
python反扒机制的5种解决方法
2021/02/06 Python
CSS3实现网站商品展示效果图
2020/01/18 HTML / CSS
高中毕业自我鉴定
2013/12/16 职场文书
网络维护中文求职信
2014/01/03 职场文书
男方父母证婚词
2014/01/12 职场文书
运动会通讯稿50字
2014/01/30 职场文书
群众路线领导班子四风对照检查材料
2014/09/27 职场文书
民主评议党员自我鉴定
2014/10/21 职场文书
护士求职自荐信
2015/03/25 职场文书
工作建议书范文
2019/07/08 职场文书
解决springboot druid数据库连接失败后一直重连的方法
2022/04/19 Java/Android