我是一個noob,所以如果我問一個愚蠢的問題,我很抱歉。我要求用戶輸入一個數字值。如果該值小於12,或者非數字值(例如數字),我希望它提示他們輸入另一個值。當輸入的值至少爲12時,我希望將該值分配給名爲creditUnits
的變量;使用Java驗證輸入
當我詢問最初的提示時,如果輸入的值不是數字,我的程序會捕獲它,它會要求用戶輸入一個有效的數字:「。 while循環似乎很好。
我遇到了第二個循環的問題,它應該捕獲輸入的數字小於12的任何數字。它會要求用戶輸入一個大於11的值。問題是我有在這一點上,如果用戶在這一點上輸入任何值,程序就在那裏。任何幫助,將不勝感激,我提前爲我的代碼的草率道歉:
System.out.print("Enter the credits's you will take each term: ");
while (!in.hasNextDouble()){
System.out.print("Enter a valid number: ");
in.next();
}
creditUnits = in.nextDouble();
if (creditUnits < 12){
System.out.print("Enter a number greater than 11: ");
in.next();
}
creditUnits = in.nextDouble();
System.out.println("You will be taking " + creditUnits + " credits per term.");
有沒有愚蠢的問題。 –
嘗試用'hasNextInt()'替換'hasNextDouble()'。順便說一下,我同意Secator:沒有愚蠢的問題;具體而言,你的問題根本不愚蠢;) – Barranka
user3330001對我的回答有幫助嗎? –