Привет, я начинаю программировать Студент, и я практикую использование циклов для проверки ввода. К сожалению, цикл работает, но полностью пропускает внутренний цикл ... Я получаю сообщение об ошибке или подсказку ...Почему Java-программа пропускает мой внутренний цикл?
Вот мой код: [Я ЗАЯВЛЯЛ ЭТО ОТ ОТВЕТА НА ЭТОМ САЙТЕ О ВАЛИДИРОВАННОМ ВХОДЕ, И КОГДА МОЖЕТ ИСПЫТАТЬ IT-.]
import java.util.Scanner;
public class ValidationTest
{
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in);
int number;
do {
System.out.println("Please enter a positive number!");
while (!sc.hasNextInt())
{
System.out.println("That's not a number!");
sc.next(); // this is important!
}
number = sc.nextInt();
} while (number <= 0);
System.out.println("Thank you! Got " + number);
}
}
Я получаю сообщение об ошибке только в том случае, если оно не является числом, но негативы делают его повторяющимся без какого-либо сообщения об ошибке или приглашения. –