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生成License的实现示例
Jun 16 Java/Android
基于Java的MathML转图片的方法(示例代码)
Jun 23 Java/Android
Java实现多线程聊天室
Jun 26 Java/Android
Java elasticsearch安装以及部署教程
Jun 28 Java/Android
Logback 使用TurboFilter实现日志级别等内容的动态修改操作
Aug 30 Java/Android
Java基础——Map集合
Apr 01 Java/Android
Java十分钟精通进阶适配器模式
Apr 06 Java/Android
详解Flutter和Dart取消Future的三种方法
Apr 07 Java/Android
Java8利用Stream对列表进行去除重复的方法详解
Apr 14 Java/Android
Spring Boot 使用 Spring-Retry 进行重试框架
Apr 24 Java/Android
Spring JPA 增加字段执行异常问题及解决
Jun 10 Java/Android
Springboot中如何自动转JSON输出
Jun 16 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 SQLite类
2009/05/07 PHP
PHP管理内存函数 memory_get_usage()使用介绍
2012/09/23 PHP
关于php操作mysql执行数据库查询的一些常用操作汇总
2013/06/24 PHP
php实现水仙花数的4个示例分享
2014/04/08 PHP
PHP保存session到memcache服务器的方法
2016/01/19 PHP
php实现网页上一页下一页翻页过程详解
2019/06/28 PHP
FusionCharts图表显示双Y轴双(多)曲线
2012/11/22 Javascript
JavaScript 处理Iframe自适应高度(同或不同域名下)
2013/03/29 Javascript
jQuery实现单行文字间歇向上滚动源代码
2013/06/02 Javascript
jquery.hotkeys监听键盘按下事件keydown插件
2014/05/11 Javascript
jQuery回到顶部的代码
2016/07/09 Javascript
JQuery validate 验证一个单独的表单元素实例
2017/02/17 Javascript
ES6新特性之类(Class)和继承(Extends)相关概念与用法分析
2017/05/24 Javascript
浅谈vue实现数据监听的函数 Object.defineProperty
2017/06/08 Javascript
JSON 数据格式详解
2017/09/13 Javascript
nodejs项目windows下开机自启动的方法
2017/11/22 NodeJs
JavaScript控制浏览器全屏显示简单示例
2018/07/05 Javascript
Next.js项目实战踩坑指南(笔记)
2018/11/29 Javascript
使用 vue 实现灭霸打响指英雄消失的效果附demo
2019/05/06 Javascript
Vue Router的手写实现方法实现
2020/03/02 Javascript
Python中使用中文的方法
2011/02/19 Python
pandas 读取各种格式文件的方法
2018/06/22 Python
浅谈PYTHON 关于文件的操作
2019/03/19 Python
Python字典常见操作实例小结【定义、添加、删除、遍历】
2019/10/25 Python
Python爬取酷狗MP3音频的步骤
2021/02/26 Python
AVIS安飞士奥地利租车官网:提供奥地利、欧洲和全世界汽车租赁
2016/11/29 全球购物
Kickers鞋英国官网:男士、女士和儿童鞋
2021/03/08 全球购物
给校长的一封建议书
2014/03/12 职场文书
新年爱情寄语
2014/04/08 职场文书
城管执法人员纪律作风整顿思想汇报
2014/09/13 职场文书
抢劫罪辩护词
2015/05/21 职场文书
教师见习总结范文
2015/06/23 职场文书
2019各种保证书范文
2019/06/24 职场文书
MySQL5.7并行复制原理及实现
2021/06/03 MySQL
Python中的pprint模块
2021/11/27 Python
MySQL的存储过程和相关函数
2022/04/26 MySQL