类: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);//满足 尝试登录失败的次数小于三次的用户 或 登录成功的用户;
}
}