Вы можете повторять ввод кода операции, пока он не станет действительным.
Я не рекомендую использовать исключения здесь, потому что это распространенный и хорошо известный случай, когда пользователь вводит недопустимый ввод.Вместо этого вы должны создать простой метод isValidOperationCode
, который проверяет ввод.Для улучшения читаемости я удалил глобальную переменную op
и превратил ее в локальную переменную, которая передается в качестве параметра в методы, которые в ней нуждаются.
Пример:
int op;
do {
op = askUserForOperation();
printCheckOperation(op);
} while (!isValidOperationCode(op));
смодифицированный printCheckOperation
метод
...
} else if (op == 5) {
System.out.println("You have chosen division");
} else {
System.out.println("Entered an invalid operation");
}
и новый метод
private boolean isValidOperationCode(int op) {
return 2 <= op && op <= 5;
}