如果输入不是整数,java会反复请求用户输入
正如标题所说,如果给定的输入无效,我试图让我的程序重新请求用户输入(在本例中,无效输入是指任何不是整数的输入)
我已经试过了,但不管用:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Please input your age");
if (scanner.hasNextInt()) {
int age = scanner.nextInt();
System.out.println("Your age is: " + age);
System.out.println();
} else {
System.out.println("This input is not an integer - Please try again!");
int age = scanner.nextInt();
System.out.println("Your age is: " + age);
System.out.println();
}
}
}
我的目标是通过while loop和scanner
我当前的代码:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("Please input your age");
if (scanner.hasNextInt()) {
int age = scanner.nextInt();
System.out.println("Your age is: " + age);
}
}
}
非常感谢您对本帖的回复
# 1 楼答案
我认为你应该用
while
代替if
语句。输入正确后中断。试试看# 2 楼答案
你可以使用
while-loop
: