2016-04-30 59 views
1

我是Java初學者。我研究了變量,語句和循環。在練習解決問題的過程中,我陷入了一個困境。問題是,在設置類型String的密碼時,如何在密碼上實現以下規則?如何使用語句和循環實現密碼規則?

  1. 密碼不能超過20個字符。
  2. 密碼應以數字或字母開頭。
  3. 密碼應該只包含「_」,字母和數字。
+0

您可以嘗試使用一條RegExp語句實現所有這些規則 – Andrew

回答

2

密碼不能超過20個字符。

測試字符串長度。請閱讀javadoc以獲取String類,以找到您需要使用的方法。

密碼應以數字或字母開頭。

String類中有一個方法,它會給你一個字符串中位置爲i的字符。尋找它。

密碼應該只包含「_」字母和數字。

同樣的方法可以用來查看任何位置的字符。使用for循環。

或者您可以使用不同種類的for循環來迭代String中的字符。


我已經故意鏈接到Oracle Java SE(tm)文檔中的javadoc。另外,我有意不與特定的方法相關聯......以鼓勵您爲自己探索javadoc。我建議你花些時間(至少)閱讀最常用類的摘要和方法/構造函數索引。

0

我建議您閱讀與正則表達式匹配的Pattern。根據您的應用程序,其結果可能類似於此:

password.matches("[0-9a-zA-Z][\\w]{0,19}") 

在一個側面說明,我不建議只使用您指定要檢查好密碼的規則。例如,您的規則中沒有最小長度檢查!

+1

我認爲這個答案是正確的,但對於剛剛瞭解語句和循環的人,我認爲這個答案太複雜了 – Joeblade

+0

非常感謝您的回覆上帝保佑您 – Kamran