我有一個真正的新手問題。 我想要求用戶輸入密碼3次。 3次後,如果仍然輸入了錯誤的密碼,我想退出該塊。Java要求用戶輸入密碼3次
這是我目前所擁有的。但我堅持最後的聲明。如果密碼第一次不正確,最後的'false'將覆蓋while循環中的'true'語句。
public boolean checkOwnerPassword2()
{
String password = "123";
String s = userInput();
if(s.equals(password))
return true;
else
{
int i = 0;
while(!(s.equals(password)) && i < 2)
{
if(s.equals(password))
return true;
else
{
System.out.println("Try again");
s = userInput();
i++;
}
}
}
return false;
}
別的地方進出口使用下面的代碼:
if(checkOwnerPassword2())
addPrizeToList();
else
System.out.println("sorry you can't add prize!");
這是我的編輯後的版本:
讓我說我得到的密碼後第二次去。它退出while循環和IF語句。最後的'返回錯誤'超過正確的返回是真的嗎? – user2343837
'return true'將是最後執行的語句,而不是'return false'。 – 2013-10-19 08:22:35
爲什麼不用'for'循環替換'while'循環? – Vallentin