e.g)
public void a(){
Scanner input = new Scanner(System.in);
String a = input.nextLine();
....
input.close();
}
public void b(){
Scanner scan = new Scanner(System.in);
int b = scan.nextInt();
....
scan.close();
}
此扫描仪无法正常运行。 但是在删除close()之后,它可以正常工作。
我想原因是' System.in'有问题。
请给我回答。
谢谢
+)首先在()中调用input.nextLine(),然后在b()中调用scan.nextInt()。 我有错误,如NoSuchElementException。
答案 0 :(得分:0)
public void b(){
Scanner scan = new Scanner(System.in);
int b = scan.nextLine();
....
input.close();
}
这不应该是input.close();
! b()
方法无法访问input
方法的a()
变量。所以你应该用scan.close()
public void b(){
Scanner scan = new Scanner(System.in);
int b = scan.nextLine();
....
scan.close();
}