Я пытаюсь проверить, вводит ли пользователь строку. Если пользователь вводит строку, моя программа должна вывести сообщение об ошибке. Если пользователь вводит целое число, моя программа должна продолжить выполнение программы
Вот мой код до сих пор, мне нужно добавить еще одно условие, чтобы проверить, вводит ли пользователь строку, я пробовал некоторые методы, но они не работают
public int UserInput() {
boolean Continueasking = true;
int Input = 0;
while (Continueasking) {
Input = io.nextInt();
if (Input == 1 || Input==2 || Input==3) {
Continueasking = !Continueasking;
} else {
System.out.println("try again");
}
}
return Input;
nextInt()
анализирует пользовательский ввод как целое число. Если пользовательский ввод не может быть проанализирован как целое число, он выдает InputMismatchException
. Вы можете поймать это исключение и обработать его по своему усмотрению.
while (continueAsking) {
try {
input = io.nextInt();
} catch (InputMismatchException ex) {
// invalid input - handle exception
}
}