Я использую Сканер для получения целочисленного ввода от пользователя.В этом случае целое число должно быть от 5 до 10 включительно.
Я работаю с этим кодом:
import java.util.Scanner;
public class valin {
public static void main(String[] args) {
int inputNumber;
Scanner in = new Scanner(System.in);
do {
System.out.println("Enter a number between 5 and 10: ");
while (!in.hasNextInt()) {
System.out.println("That is not a number. Please try again: ");
in.next();
}
inputNumber = in.nextInt();
if (inputNumber < 5 || inputNumber > 10) {
System.out.println("Needs to be a number between 5 and 10. Try again.");
}
} while (inputNumber < 5 || inputNumber > 10);
System.out.println("You entered: " + inputNumber);
in.close();
}
}
Проблема, с которой я сталкиваюсь, заключается в том, что пользователь вводит более 1 ввода в строке.В этом случае мой код будет отображаться как:
Enter a number between 5 and 10:
www eee
That is not a number. Please try again:
That is not a number. Please try again:
qqq 6
That is not a number. Please try again:
You entered: 6
Что мне нужно, если пользователь введет, например, «qqq 6» или любой «ввод ввода пробела», что код скажет пользователю, что он недействителен ичтобы ввести его снова.
Возможно ли это?