当我使用scanner.close()
时,System.in
参数也会关闭
我可以通过搜索这个网站了解这个过程
有人说如果System.in关闭,就无法重新打开
但他们并没有对此有信心。
所以我的问题是这样的:
如何System.in
重新开启?或者这是不可能的?
为了解我的问题,我在这里放了一些示例代码
public void scannerTest() {
Scanner input = new Scanner(System.in);
int i = input.nextInt();
input.close();
Scanner input2 = new Scanner(System.in);
int j = input2.nextInt();
}
并在控制台上生成结果
Exception in thread "main" java.util.NoSuchElementException
at java.util.Scanner.throwFor(Scanner.java:862)
at java.util.Scanner.next(Scanner.java:1485)
at java.util.Scanner.nextInt(Scanner.java:2117)
at java.util.Scanner.nextInt(Scanner.java:2076)
at repeat.Test.scannerTest(Test.java:55)
at repeat.Test.<init>(Test.java:19)
at repeat.Test.main(Test.java:11)