У меня есть этот класс "ScanInput":
public final class ScanInput {
public String outputS;
public int outputI;
public ScanInput() {
}
public final void scanInt(String text) {
System.out.print(text);
@SuppressWarnings("resource")
Scanner inputI = new Scanner(System.in);
int input;
while(true) {
try {
input = inputI.nextInt();
break;
} catch (Exception e) {
scanInt(text);
}
}
outputI = input;
}
}
Вызывается (это правильное слово? Я новичок в java) этим классом "Wow":
public class Wow {
public static void main(String[] args) {
ScanInput numbers = new ScanInput();
numbers.scanInt("INPUT NUMBERS: ");
System.out.println("You entered: " + numbers.outputI);
}
}
Я пытаюсь заставить его повториться, когда целое число не напечатано. Если я набираю целое число в первый раз, оно работает и печатает "You entered: " + numbers.outputI
. Если я этого не сделаю, он снова выполнит «INPUT NUMBERS:», но затем он застрянет в al oop и просто напечатает "You entered: " + numbers.outputI);
независимо от ввода. Как мне заставить его работать, если первый раз не является целым числом?