поэтому я пытаюсь сделать домашнее задание, вот в чем вопрос:
Напишите программу, которая предлагает пользователю прочитать два целых числа и отображает их сумму. Если в качестве входных данных передается что-либо кроме целого числа, ваша программа должна перехватить возникшее исключение InputMismatchException и предложить пользователю ввести другое число, напечатав «Пожалуйста, введите целое число».
Ниже приведен пример выполнения и то, что я я должен проверить.
SAMPLE RUN #1: java InputMismatch
Enter an integer: 2.5↵
Please enter an integer↵
Enter an integer: 4.6↵
Please enter an integer↵
Enter an integer: hello!↵
Please enter an integer↵
Enter an integer:7↵
Enter an integer:5.6↵
Please enter an integer↵
Enter an integer:9.4↵
Please enter an integer ↵
Enter an integer:10↵
17↵
Когда я тестирую свой код и вставляю целые числа, он работает так, как и должно быть, однако я застрял на том, чтобы сложить целые числа, когда оба входа введены правильно. Что я делаю не так?
import java.util.InputMismatchException;
import java.util.Scanner;
public class TestInputMismatch {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int num1 = 0;
int num2 = 0;
boolean isValid = false;
while (!isValid) {
try {
System.out.print("Enter an integer: ");
int number = input.nextInt();
System.out.println("The number entered is " + number);
boolean continueInput = false;
}
catch (InputMismatchException ex) {
System.out.println("Try again. (" + "Incorrect input: an integer is required)");
input.nextLine();
}
}
System.out.println((num1 + num2));
}
}