Итак, я пытаюсь поймать эти пользовательские входы, которые я могу сделать, но проблема в том, что когда я его поймаю, он не возвращается к введенному пользователем ошибке (InputMismatchException), но вместо этого он вернется к началу цикла. Скажем, если пользователь делает ошибку на втором входе, он вернется к первому входу, которое пользователь правильно напечатал. Я просто оставил его основным и удалил мою попытку.Несколько пользовательских входов с Try Catch InputMismatchException
public class TestRefuseTruck {
public static void main(String[] args) {
int maxBins;
int rate;
int weight;
int count = 0;
Scanner in = new Scanner(System.in);
try {
System.out.println("Enter the number of bins the truck can collect: ");
maxBins = in.nextInt();
System.out.println("Enter the cost per kilo:");
rate = in.nextInt();
RefuseTruck r = new RefuseTruck(maxBins, rate);
while (count < maxBins) {
System.out.println("Enter the weight for bin " + (count + 1));
weight = in.nextInt();
if (r.collectBin(weight) == true) {
count++;
}
}
r.printStats();
} catch (InputMismatchException e) {
System.out.println("Incorrect Input.");
}
}
}
Где ваш 'try-catch'? – Berger
где ваш класс 'RefuseTruck'? –
@ RajS.Rusia это не имеет значения. Я только пытаюсь поймать inputmismatch в тестовом классе и обрабатывать его там. – Annihil8