我如何检查,扫描器收到的数字是否一定是 java 中的整数?

How can I check, the number that scanner received is an integer certainly in java?

我有一个方法必须获取一个整数作为输入。我怎样才能确定它是一个整数。如果输入是字符串,那么再次获取数字。

public int getMobileNumber() {
    System.out.println("Enter Mobile Number: ");
    int mobileNumber = input.nextLong();
    System.out.println("Mobile Number Registered!");
    return mobileNumber;
}

您可以使用 hasNextInt 方法和一个 while 循环来确定一个整数:

Scanner sc = new Scanner(System.in);
System.out.println("Please enter a number:");

while (!sc.hasNextInt()) {
    System.out.printf("Your input was \"%s\". Please enter a number:%n", sc.next());
}

int num = sc.nextInt();
System.out.println(num);

sc.close();