1
do {
    System.out.println("Please enter a 16 digit number");
    while (!kbd.hasNextLong()) {
        System.out.println("That's not a valid number!");
        System.out.println("Please enter a 16 digit number");
        kbd.next();
    }
    number = kbd.nextLong();
} while (number > MAX || number < MIN );

MAX は 10000000000000000L として宣言されます

MIN は 999999999999999L として宣言されます

しかし、プログラムを実行して 16 桁の数字を挿入すると、「16 桁の数字を入力してください。スキャナは再度プロンプトを表示します。

何か案は?

4

1 に答える 1

0

入力を制限する範囲チェックがwhile (number > MAX || number < MIN )あります。999999999999999 と入力してみてください。

于 2013-10-22T20:05:56.940 に答える