Scanner オブジェクト scを使用して、ユーザーの入力から整数を読み取ろうとしており、それが 0 より大きいかどうかを評価する必要があります。そのため、while() で次の OR 条件を設定して、空行か入力番号かを確認します。 0 未満。ただし、無効な入力が検出された後、プログラムは入力を受け取りません。どんな助けでも大歓迎です。
Scanner sc = new Scanner(System.in);
while (!sc.hasNextInt() || sc.nextInt() <= 0)
{
System.out.println("Invalid input\n the number needs to be greater than 0");
sc.next();
}
int number = sc.nextInt();