Очень хороший вариант использования цикла do-while
.Вы используете этот цикл, когда вам необходимо убедиться, что ваши операторы выполняются хотя бы один раз.И последующее выполнение выполняется только в том случае, если оно соответствует условию.В этом случае это условие будет проверять ваш ввод .
Scanner in = new Scanner(System.in);
String prompt = "Input word to test: ";
String stringIn;
do {
System.out.println(prompt);
stringIn = in.nextLine();
prompt = "Invalid input, try again.";
}
while (stringIn.matches("[a-zA-Z]+"));
Если вход non-numeric
, то условие while будет true
, и этот цикл будет запущен снова, следовательно, запрашивается новый вход.если входное значение равно numeric
, то условие while будет false
, поэтому выйдите из цикла while и получите пользовательский ввод в переменной stringIn
.