在不连接数据库的情况下,用控制台实现某种管理系统的登录,注册
以及对
用户信息,密码的修改功能
代码如下
public class Demo1 {
//模拟注册系统
//定义存储用户信息的数组
static String arrId[] = {} ;
static String arrName[] = {};
static String arrPw[] = {};
static String arrEmail[] = {};
static int loginIndex = -1;
//用户注册
public static void register(String id,String name,
String pw,String email){
//数组的扩容
arrId = Arrays.copyOf(arrId, arrId.length+1);
arrName = Arrays.copyOf(arrName, arrName.length+1);
arrPw = Arrays.copyOf(arrPw, arrPw.length+1);
arrEmail = Arrays.copyOf(arrEmail, arrEmail.length+1);
//注册用户length-1是因为要放在数组的最后一个
arrId[arrId.length-1] = id;
arrName[arrName.length-1] = name;
arrPw[arrPw.length-1] = pw;
arrEmail[arrEmail.length-1] = email;
}
//测试注册是否成功
public static void showInfo(){
for(int i =0;i<arrId.length;i++){
System.out.println(arrId[i]+" "+arrName[i]+" "+arrPw[i]+" "+arrEmail[i]);
}
}
//验证用户名和密码 3次
public static boolean check(String name,String pw){
int flag = 0;//表示没用用户名或密码
for(int i = 0; i < arrName.length;i++){
if(arrName[i].equals(name)&&arrPw[i].equals(pw)){
//flag = 1;
//存储登录用户的下标
loginIndex = i;
return true;
}
}
return false;
/*if(flag == 1){
return true;
}else{
return false;
}*/
}
//修改个人信息
public static void updateInfo(String name,String email){
arrName[loginIndex] = name;
arrEmail[loginIndex] = email;
}
//修改密码
public static void updatePw(String newPw,String confirmPw){
if(newPw.equals(confirmPw)) {
arrPw[loginIndex] = newPw;
System.out.println("修改密码成功!");
}
else System.out.println("俩次密码不一致");
}
public static void main(String[] args) {
//欢迎页面信息
System.out.println("-------欢迎进入客户管理模块-------");
//接收键盘输入
Scanner sc = new Scanner(System.in);
while(true){
System.out.println("1 注册");
System.out.println("2 登录");
System.out.println("0 退出系统");
System.out.println("请输入编号:");
int num = sc.nextInt();
switch(num){
case 1:
System.out.println("请输入客户编号:");
String id = sc.next();
System.out.println("请输入客户姓名:");
String name = sc.next();
System.out.println("请输入客户密码:");
String pw = sc.next();
System.out.println("请输入客户邮箱:");
String email = sc.next();
register(id,name,pw,email);
System.out.println("注册成功!");
showInfo();
break;
case 2:
int count = 0;
do{
//密码超过3次退出系统
if(count==3){
System.out.println("超过3次,退出系统");
System.exit(0);
}
System.out.println();
System.out.println("请输入客户姓名:");
name = sc.next();
System.out.println("请输入客户密码:");
pw = sc.next();
count++;
}while(!check(name,pw));
System.out.println("");
System.out.println("1 修改个人信息");
System.out.println("2 修改密码");
System.out.println("0 返回上一级菜单");
System.out.println("请输入编号:");
num = sc.nextInt();
switch(num){
case 1:
System.out.println("请输入客户姓名:");
name = sc.next();
System.out.println("请输入客户邮箱:");
email = sc.next();
updateInfo(name,email);
showInfo();
break;
case 2:
System.out.println("请输入新密码:");
String newPw = sc.next();
System.out.println("请确认新密码:");
String confirmPw = sc.next();
updatePw(newPw,confirmPw);
break;
case 0:
break;
}
break;
case 0:
//退出运行环境
System.exit(0);
}
}
}
}