java - 调用另一个类时出现 NoSuchElementException

标签 java exception

我正在尝试编写一个游戏,您可以在其中探索和查找资源,但是当我尝试调用“探索类”时,它会运行以下代码:

Scanner scanner = new Scanner(System.in);
    int choose;
    boolean keep = false;
    do{
    System.out.println("Who would you like to send to explore?");
    System.out.println("=======================================");
    System.out.println(" *\t1. Simon                     *");
    System.out.println(" *\t2. Lily                      *");
    System.out.println(" *\t3. Axel                      *");
    System.out.println(" *\t4. Exit Exploring            *");
    System.out.println("=======================================");
    choose = scanner.nextInt();

返回主类并执行以下操作:

System.out.println("===================================");
        System.out.println("\t 1. Explore");
        System.out.println("\t 2. Use Resources");
        System.out.println("\t 3. View Stats");
        System.out.println("\t 4. Sleep");
        System.out.println("===================================");
        option = scanner.nextInt();//where I believe the exception happened

它抛出异常:java.util.NoSuchElementException

我在探索类结束时完成了 scanner.close();,但我不确定它是否导致了问题。

谁能向我解释一下我的代码中的错误吗?

最佳答案

尝试使用

if(scanner.hasNextInt()){
    option = scanner.nextInt();
}

关于java - 调用另一个类时出现 NoSuchElementException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34989707/

相关文章:

java - java中可以使用空闲线程同时执行其他线程的工作吗?

java - NSEE 是什么意思?这段代码中发生了什么?

python - 打印多行引发的异常

wcf - 抛出通用的 FaultException

java - 在父类和子类的构造函数中调用重写方法

java - 从映射 <String, Table<? 获取具有未知泛型参数的对象扩展实体>>

java - 字符串操作模式

java - Java EE Web 应用程序中的无效字符串或缓冲区长度异常

flutter - 在抖动中出现空错误时调用了PhotoURL

python - 为什么 Python 不能捕获 C++ 中引发的异常?