該程序允許用戶輸入表示密碼的字符串並確定它是否有效。密碼長度必須爲8個字符,包括一個小寫字母,一個大寫字母,一個數字和一個符號(例如!@#)。我需要幫助編寫一個程序來確定密碼是否有效
輸出應爲:
Entered Password: (whatever the user entered)
Verdict: (either valid or invalid)
這裏是我到目前爲止的代碼:
import java.util.*;
public class PasswordTest
{
public static void main(String[]args)
{
Scanner input = new Scanner (System.in);
System.out.print("Enter a password: ");
String Pass = input.next();
System.out.println("Entered Password: " + Pass);
if (Pass.length() < 8)
{
System.out.println ("Verdict: Invalid");
}
if (Pass.length() >= 8)
{
System.out.println ("Verdict: Valid");
{
}
}
我不能確定如何去這一點。我假設我需要一個循環語句來確定它是否包含大寫和小寫字母以及數字和符號。
在一個側面說明,請嘗試使用[控制檯#readPassword] (http://docs.oracle.com/javase/7/docs/api/java/io/Console.html#readPassword%28%29)從輸入設備讀取密碼。這可以最大限度地減少內存中密碼等敏感數據的生命週期,減少攻擊的可能性。 – asgs 2014-10-03 05:20:40