У меня есть программа, которая в первом экземпляре сообщает пользователю свои параметры и принимает пользовательский ввод, соответствующий желаемой опции. У меня есть обработка исключений для этого, но если есть исключение, как я могу заставить программу продолжать цикл, пока не будет принят допустимый вход?Завершить программу в статистике try/catch
import java.util.InputMismatchException;
import java.util.Scanner;
public class Application
{
public static void main(String[] args)
{
try
{
int option;
Scanner input = new Scanner(System.in);
System.out.println("Welcome to Toys Rental Ltd! \n\nChoose an option: "
+ "\n-Rent a toy (enter 1) "
+ "\n-Return a toy (enter 2) "
+ "\n-Add a new member of a toy (enter 3) "
+ "\n-Update member details (enter 4) "
+ "\n-Update toy details (enter 5) "
+ "\n-Print a member and toy list (enter 6) "
+ "\n-Print a member and rental statment (enter 7) "
+ "\n Or for help please enter 0");
option = input.nextInt();
if(option
}
catch (InputMismatchException iie)
{
System.out.println("Invalid input, please try again");
}
}
}
Почему вы просто не используете 'if statement'? вместо утверждения try catch, проверка ввода сначала перед обработкой была бы идеальной, вместо того, чтобы позволить исключению быть пойманным – user2705620
попробуйте обернуть попытку catch в цикле while –
Поместите try/catch внутри цикла. –