類: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);//滿足嘗試登錄失敗的次數小於三次的用戶或登錄成功的用戶;
}
}