2017-10-17 72 views
0

我想輸入一個條件,用戶在while循環中被捕獲,直到他們輸入小數點.00.025之間,不高或者更低。使用&&/||使用次要參數的用戶輸入循環

System.out.println("Enter the interest rate you would like, preferablly between .00 and .25"); 
while ((interestRate = keyboard.nextDouble()) < 0.00 || ((interestRate = keyboard.nextDouble()) < 0.25)) 
{ 
    System.out.println("Just a number between .00 and .25, no more, no less!"); 
} 
System.out.println("Testing for break"); 

我無法讓被詛咒的東西正常運行,但始終運行成空白。

回答

0

您在條件內調用keyboard.nextDouble()兩次(儘管只有第一個將在(第一個!)輸入實際爲負時纔會被評估)。 (向後您的版本有條件的0.25也。)

while(true) { 
    interestRate=keyboard.nextDouble(); 
    if(interestRate>=0 && interestRate<=0.25) break; 
    System.out.println("..."); 
} 

0

你打電話nextDouble()兩次,和你的第二個條件是相反的:也許,完全不把它叫做條件內。試試這個:

while ((interestRate = keyboard.nextDouble()) < 0.00 || interestRate > 0.25) 
相關問題