java - 为什么在线程 "main"java.util.NoSuchElementException 中出现异常?

标签 java exception input

这是我的代码:

import java.util.Scanner;

public class Distribution{

     public static void main(String []args){
        System.out.println("How many cards to be distributed? ");
        Scanner keyboard = new Scanner(System.in);
        int cards = keyboard.nextInt();
     }
}

当我运行它时,它在线程 main 中给我一个异常:

java.util.NoSuchElementException

为什么会发生这种情况,我该如何解决?

最佳答案

你应该调用hasNextInt()首先,

public static void main(String []args){
    System.out.println("How many cards to be distributed? ");
    Scanner keyboard = new Scanner(System.in);
    if (keyboard.hasNextInt()) {
        int cards = keyboard.nextInt();
        // ...
    }
 }

当我尝试使用您的 compileonline 链接时,它也有效: Working code

编辑

实际答案是在在线工具的“STDIN”输入行中指定输入。您发布的代码在您执行时有效(如第二张图片所示),

Working code 2

关于java - 为什么在线程 "main"java.util.NoSuchElementException 中出现异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23250954/

相关文章:

java - 使用 preparedstatement 从 Servlet 插入时出现 Mysql 语法错误

javascript - 输入按钮使用 svg 而不是文本

javascript - 达到 maxlength 后如何限制输入的字符?

java - java在内存中存储数据的数据库是哪个?

java - 我对指针/引用的基础知识感到困惑

c - 如何让 VC++ 的调试器在出现异常时中断?

iPhone - 将相机照片保存到 iPhone 相册时崩溃

jquery - 如何使用 jQuery 设置输入(文本框)的值?

java - 如何插入特殊字符?

c++ - 复制省略和异常(exception)