Я пытаюсь убедиться, что вход пользователя является целым числом, но когда я использую приведенный ниже код, я просто получаю бесконечный цикл инструкции print
. Любые советы по улучшению?Ошибка при попытке с try-catch и while loop
boolean valid = false;
System.out.println("What block are you gathering? (use minecraft block ids)");
while(valid == false){
try{
block = input.nextInt();
valid = true;
}
catch(InputMismatchException exception){
System.out.println("What block are you gathering? (use minecraft block ids)");
valid = false;
}
}
Какой тип 'block'? –
@ УмаКант Здесь неважно :). – Tom
Не могли бы вы подробнее рассказать? ив используется NumberFormatException, но получает эту ошибку вместо того, чтобы: исключения в потоке "главный" java.util.InputMismatchException \t в java.util.Scanner.throwFor (Unknown Source) \t в java.util.Scanner.next (Unknown Source) \t в java.util.Scanner.nextInt (Unknown Source) \t в java.util.Scanner.nextInt (Unknown Source) \t в firsttry.Main.main (Main.java:28) – deano3663