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项目以jar包运行的操作方法
Jun 30 Java/Android
java实现对Hadoop的操作
Jul 01 Java/Android
看完这篇文章获得一些java if优化技巧
Jul 15 Java/Android
Java日常练习题,每天进步一点点(38)
Jul 26 Java/Android
springboot如何接收application/x-www-form-urlencoded类型的请求
Nov 02 Java/Android
Java由浅入深通关抽象类与接口(下篇)
Apr 26 Java/Android
JAVA springCloud项目搭建流程
May 11 Java/Android
Java处理延时任务的常用几种解决方案
Jun 01 Java/Android
ConditionalOnProperty配置swagger不生效问题及解决
Jun 14 Java/Android
Spring Cloud OpenFeign模版化客户端
Jun 25 Java/Android
java实现web实时消息推送的七种方案
Jul 23 Java/Android
HttpClient实现文件上传功能
Aug 14 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
基于mysql的论坛(5)
2006/10/09 PHP
php桌面中心(四) 数据显示
2007/03/11 PHP
解析:php调用MsSQL存储过程使用内置RETVAL获取过程中的return值
2013/07/03 PHP
php获取字符串中各个字符出现次数的方法
2015/02/23 PHP
PHP实现仿Google分页效果的分页函数
2015/07/29 PHP
YII框架学习笔记之命名空间、操作响应与视图操作示例
2019/04/30 PHP
PHP强制转化的形式整理
2020/05/22 PHP
jQuery学习7 操作JavaScript对象和集合的函数
2010/02/07 Javascript
jQuery在vs2008及js文件中的无智能提示的解决方法
2010/12/30 Javascript
js Html结构转字符串形式显示代码
2011/11/15 Javascript
基于jquery异步传输json数据格式实例代码
2013/11/23 Javascript
JavaScript调试技巧之console.log()详解
2014/03/19 Javascript
js去除输入框中所有的空格和禁止输入空格的方法
2014/06/09 Javascript
深入理解JavaScript系列(35):设计模式之迭代器模式详解
2015/03/03 Javascript
jQuery控制网页打印指定区域的方法
2015/04/07 Javascript
JQuery判断checkbox是否选中及其它复选框操作方法合集
2015/06/01 Javascript
代码分析jQuery四种静态方法使用
2015/07/23 Javascript
整理关于Bootstrap过渡动画的慕课笔记
2017/03/29 Javascript
JS实现css hover操作的方法示例
2017/04/07 Javascript
解决JS内存泄露之js对象和dom对象互相引用问题
2017/06/25 Javascript
vue中多个倒计时实现代码实例
2019/03/27 Javascript
layui的表单验证支持ajax判断用户名是否重复的实例
2019/09/06 Javascript
[10:28]2018DOTA2国际邀请赛寻真——VGJ.S寻梦之路
2018/08/15 DOTA
python3.6实现学生信息管理系统
2019/02/21 Python
Python转换字典成为对象,可以用&quot;.&quot;方式访问对象属性实例
2020/05/11 Python
德国机车企业:FC-Moto
2017/10/27 全球购物
巴西购物网站:Estrela10
2018/12/13 全球购物
婴儿地球:Baby Earth
2018/12/25 全球购物
初中体育教学反思
2014/01/14 职场文书
运动会四百米广播稿
2014/01/19 职场文书
代办社保委托书范文
2014/10/06 职场文书
2014年党的群众路线活动个人整改措施
2014/10/28 职场文书
2014个人年度工作总结范文
2014/12/24 职场文书
天河观后感
2015/06/11 职场文书
外出学习心得体会范文
2016/01/18 职场文书
导游词之天下银坑景区
2019/11/21 职场文书