在此代码的第 4 行,有一个资源泄漏警告。输入=扫描();
我想要一个从用户那里获取整数的方法。如果他之前输入的值是不可接受的,它会要求用户重新输入一个整数值,即chars,spec。chars 等。另外,我想在返回获取的 int 之前关闭扫描仪。
我该如何解决这个问题?
public static int readInt() {
Scanner input = scan();
while(!input.hasNextInt()) {
input = scan();
int n = input.nextInt();
while(n<0) {
System.out.println("Input should be a positive interger!");
n = readInt();
}
input.close();
return n;
}
return -1;
}
public static Scanner scan() {
System.out.print("Enter number: ");
Scanner input = new Scanner(System.in);
return input;
}