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 相关文章推荐
Java实战之用Swing实现通讯录管理系统
Jun 13 Java/Android
实体类或对象序列化时,忽略为空属性的操作
Jun 30 Java/Android
SpringBoot+VUE实现数据表格的实战
Aug 02 Java/Android
聊聊Lombok中的@Builder注解使用教程
Nov 17 Java/Android
InterProcessMutex实现zookeeper分布式锁原理
Mar 21 Java/Android
Android Flutter实现3D动画效果示例详解
Apr 07 Java/Android
Java GUI编程菜单组件实例详解
Apr 07 Java/Android
解决springboot druid数据库连接失败后一直重连的方法
Apr 19 Java/Android
Flutter Navigator 实现路由传递参数
Apr 22 Java/Android
Spring Data JPA框架的核心概念和Repository接口
Apr 28 Java/Android
springboot集成redis存对象乱码的问题及解决
Jun 16 Java/Android
SpringBoot使用ip2region获取地理位置信息的方法
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
Netflix将与CLAMP、乙一以及冲方丁等6名知名制作人合伙展开原创动画计划!
2020/03/06 日漫
PHP脚本数据库功能详解(下)
2006/10/09 PHP
php set_magic_quotes_runtime() 函数过时解决方法
2010/07/08 PHP
apache+php完美解决301重定向的两种方法
2011/06/08 PHP
php实现页面纯静态的实例代码
2017/06/21 PHP
jquery 防止表单重复提交代码
2010/01/21 Javascript
UI Events 用户界面事件
2012/06/27 Javascript
仿百度的关键词匹配搜索示例
2013/09/25 Javascript
jQuery中last()方法用法实例
2015/01/06 Javascript
javascript 数组操作详解
2015/01/29 Javascript
JS实现带有3D立体感的银灰色竖排折叠菜单代码
2015/10/20 Javascript
基于Jquery实现仿百度百科右侧导航代码附源码下载
2015/11/27 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
2016/02/21 Javascript
使用classList来实现两个按钮样式的切换方法
2018/01/24 Javascript
Puppeteer环境搭建的详细步骤
2018/09/21 Javascript
layui自定义ajax左侧三级菜单
2019/07/26 Javascript
Vue全局loading及错误提示的思路与实现
2019/08/09 Javascript
layer.open的自适应及居中及子页面标题的修改方法
2019/09/05 Javascript
js根据后缀判断文件文件类型的代码
2020/05/09 Javascript
python基础教程之序列详解
2014/08/29 Python
Python爬虫:通过关键字爬取百度图片
2017/02/17 Python
python生成词云的实现方法(推荐)
2017/06/13 Python
python kmeans聚类简单介绍和实现代码
2018/02/23 Python
在Python dataframe中出生日期转化为年龄的实现方法
2018/10/20 Python
python logging模块的使用总结
2019/07/09 Python
完美解决Django2.0中models下的ForeignKey()问题
2020/05/19 Python
全球知名旅游社区巴西站点:TripAdvisor巴西
2016/07/21 全球购物
外贸业务员工作职责
2014/01/06 职场文书
大学生职业生涯规划书汇总
2014/03/20 职场文书
法制宣传口号
2014/06/16 职场文书
党支部特色活动方案
2014/08/20 职场文书
学校党的群众路线教育实践活动总结材料
2014/10/30 职场文书
学习群众路线的心得体会
2014/11/05 职场文书
分居协议书范本(律师见证版)
2014/11/26 职场文书
寒假社会实践个人总结
2015/03/06 职场文书
初中毕业生感言
2015/07/31 职场文书