小心关闭扫描仪

你可以使用一个带有 System.in 作为构造函数参数的扫描程序,然后你需要知道关闭扫描程序会关闭 InputStream,然后每次尝试读取输入(或任何其他)扫描仪对象)将投掷 java.util.NoSuchElementExceptionjava.lang.IllegalStateException

例:

    Scanner sc1 = new Scanner(System.in);
    Scanner sc2 = new Scanner(System.in);
    int x1 = sc1.nextInt();
    sc1.close();
    // java.util.NoSuchElementException
    int x2 = sc2.nextInt();
    // java.lang.IllegalStateException
    x2 = sc1.nextInt();