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设置Word文本框中的文字旋转方向的实现方法
Jun 28 Java/Android
HashMap实现保存两个key相同的数据
Jun 30 Java/Android
JUnit5常用注解的使用
Jul 02 Java/Android
gateway与spring-boot-starter-web冲突问题的解决
Jul 16 Java/Android
SpringBoot+Vue+JWT的前后端分离登录认证详细步骤
Sep 25 Java/Android
MyBatis-Plus 批量插入数据的操作方法
Sep 25 Java/Android
Java实现学生管理系统(IO版)
Feb 24 Java/Android
详细介绍Java中的CyclicBarrier
Apr 13 Java/Android
引用计数法和root搜索算法以及JVM中判定对象需要回收的方法
Apr 19 Java/Android
Android Studio 计算器开发
May 20 Java/Android
Java界面编程实现界面跳转
Jun 16 Java/Android
Java中的Kotlin 内部类原理
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中file_get_content 和curl以及fopen 效率分析
2014/09/19 PHP
js压缩工具 yuicompressor 使用教程
2010/03/31 Javascript
基于jquery跨浏览器显示的file上传控件
2011/10/24 Javascript
iframe里的页面禁止右键事件的方法
2014/06/10 Javascript
jQuery中detach()方法用法实例
2014/12/25 Javascript
jQuery对象的selector属性用法实例
2014/12/27 Javascript
jquery通过load获取文件的内容并跳到锚点的方法
2015/01/29 Javascript
javascript实现状态栏文字首尾相接循环滚动的方法
2015/07/22 Javascript
百度地图api如何使用
2015/08/03 Javascript
jquery解析json格式数据的方法(对象、字符串)
2015/11/24 Javascript
Hammer.js+轮播原理实现简洁的滑屏功能
2016/02/02 Javascript
深入理解jQuery事件绑定
2016/06/02 Javascript
全屏滚动插件fullPage.js使用实例解析
2016/10/21 Javascript
jQuery延迟执行的实现方法
2016/12/21 Javascript
JS小数转换为整数的方法分析
2017/01/07 Javascript
jquery处理checkbox(复选框)是否被选中实例代码
2017/06/12 jQuery
vue路由懒加载的实现方法
2018/03/12 Javascript
Javascript中绑定click事件的四种方式介绍
2018/10/26 Javascript
vue实现手机号码的校验实例代码(防抖函数的应用场景)
2019/09/05 Javascript
[00:02]DOTA2新版本使用PA至宝后暴击展示
2014/11/19 DOTA
[57:41]Secret vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
python中类和实例如何绑定属性与方法示例详解
2017/08/18 Python
Python返回数组/List长度的实例
2018/06/23 Python
用python标准库difflib比较两份文件的异同详解
2018/11/16 Python
python隐藏终端执行cmd命令的方法
2019/06/24 Python
500行代码使用python写个微信小游戏飞机大战游戏
2019/10/16 Python
手把手教你安装Windows版本的Tensorflow
2020/03/26 Python
python如何查看安装了的模块
2020/06/23 Python
从python读取sql的实例方法
2020/07/21 Python
Python实现http接口自动化测试的示例代码
2020/10/09 Python
HTML5 video 视频标签使用介绍
2014/02/03 HTML / CSS
波兰最大的儿童服装连锁店之一:5.10.15.
2018/02/11 全球购物
工商管理专业实习大学生自我鉴定
2013/09/19 职场文书
英文自荐信
2013/12/15 职场文书
思想品德课教学反思
2016/02/24 职场文书
win10截图快捷键win+shift+s没有反应无法截图怎么解决?
2022/08/14 数码科技