扫描器NoTouchElement异常Java

扫描器NoTouchElement异常Java,java,input,java.util.scanner,output,Java,Input,Java.util.scanner,Output,有人能告诉我为什么这段代码会抛出NoTouchElementException吗? 我以前使用过扫描仪进行输入和输出,但从来没有遇到过问题 import java.util.*; public class TaskRunner { public static void main(String[] args) { Scanner keyboard = new Scanner(System.in); System.out.print("Enter

有人能告诉我为什么这段代码会抛出NoTouchElementException吗? 我以前使用过扫描仪进行输入和输出,但从来没有遇到过问题

import java.util.*;

public class TaskRunner
{
    public static void main(String[] args)
    {
        Scanner keyboard = new Scanner(System.in);

        System.out.print("Enter the year: ");
        int year = keyboard.nextInt();
        System.out.print("\nEnter the month: ");
        int month = (keyboard.nextInt() - 1);
        System.out.print("\nEnter the day: ");
        int day = keyboard.nextInt();

        System.out.print(day);
    }
}
由于每个人都在询问,所以在第10行抛出了异常。 这里还有堆栈跟踪

Enter the year: Exception in thread "main" java.util.NoSuchElementException
    at java.util.Scanner.throwFor(Scanner.java:907)
    at java.util.Scanner.next(Scanner.java:1530)
    at java.util.Scanner.nextInt(Scanner.java:2160)
    at java.util.Scanner.nextInt(Scanner.java:2119)
    at TaskRunner.main(TaskRunner.java:10)

我能够毫无例外地完美地执行这个程序。在哪一行抛出错误?在哪一行出现异常?每次尝试解释异常时,添加堆栈跟踪。没有堆栈跟踪很难帮助你。请发布异常跟踪。