類:NameII 許可權:public
方法:main 許可權:public
參數:name,password,denglu,i;
參數介紹:
name,資料類型 String ,用來儲存一個從 input 中擷取的值,在本程式當中用作使用者名稱的存放;
password,資料類型 String ,用來儲存一個從 input 中擷取的值,在本程式當中用作密碼的存放;
denglu,資料類型 boolean,用來儲存預設賬戶的登入狀態,true 表示登入成功,false 表示尚未登入;
i,資料類型 int ,用來儲存一個使用者嘗試登入失敗次數的值;
方法功能:
在控制台輸出“請輸入使用者名稱:”要求使用者從控制台輸入一個 String 類型的數值存放到name當中;
而後在控制台輸出“請輸入密碼:”要求使用者從控制台輸入一個 String 類型的數值存放在password當中;
驗證從控制台通過 input 中擷取的使用者名稱和密碼是否與預設的使用者名稱和密碼一致;
如果一致,則輸出“登入成功”,並更改使用者登入狀態 denglu 的值為 true ;
如果不一致,提醒使用者登入失敗,將使用者嘗試登入失敗的次數加1,並提醒使用者帳號剩餘的嘗試登入次數;
使用者嘗試登入失敗的次數達到3次,並提示使用者名稱帳號被凍結。
複製代碼 代碼如下:
public class NameII {
public static void main (String []arge) {
boolean denglu = false;//聲明一個 boolean 資料類型的變數 denglu 儲存使用者名稱的登入狀態,預設值為 false 尚未登入;
int i = 0;//聲明一個 int 資料類型的變數 i 儲存使用者嘗試登入失敗的次數;
java.util.Scanner input = new java.util.Scanner (System.in);
do{
System.out.println("請輸入使用者名稱:");
String name = input.next();//聲明一個 String 資料類型的變數 name 儲存 input 中擷取的使用者名稱的值;
System.out.println("請輸入密碼:");
String password = input.next();//聲明一個 String 資料類型的變數 password 儲存 input 中擷取的密碼的值;
//驗證 name 中的值和 password 中的值是否和使用者名稱和密碼一致;
if ("zhang".equals(name)&&"123".equals(password)){//如果一致則執行以下代碼塊;
System.out.println("登入成功");//提示使用者名稱登入成功;
denglu = true;//更改使用者名稱登入狀態;
}else{//如果不一致則執行以下代碼塊;
//提醒使用者登入失敗,將使用者嘗試登入失敗的次數加1,並提醒使用者帳號剩餘的嘗試登入次數;
i++;
System.out.println("登入失敗,您還可以在嘗試" + (3-i) +"次");
//使用者嘗試登入失敗的次數達到3次,並提示使用者名稱帳號被凍結;
if(i == 3){
System.out.println("帳號或密碼錯誤三次,帳號凍結");
}
}
}while(i < 3 && !denglu);//滿足 嘗試登入失敗的次數小於三次的使用者 或 登入成功的使用者;
}
}