- 数据使用数组存放,每个数组的相同下标为同一个用户`
// 定义用户相关属性
static int userid[] = {};
static String username[] = {};
static int userpassword[] = {};
static long useremail[] = {};
static Scanner scanner = new Scanner(System.in);//定义输入流
static int id = 0; // id计数器累加
static int currentid = 0; // 登录后的修改操作定义当前id
- 通过在控制台输入数据来进行操作,用switch 语句来写。主函数通过调用start类来进入start函数如下
public static void main(String[] args) {
start();
}
//开始
private static void start() {
System.out.println("-----------------------------------------------------");
System.out.println(" 模 拟 注 册 页 面");
System.out.println("请选择操作: 1:注册 2:登录修改个人信息 3:退出系统 ");
System.out.println("-----------------------------------------------------");
int choice = scanner.nextInt();
switch (choice) {
case 1:
System.out.println("请输入个人信息如下:");
// System.out.println("请输入id号");
// int id = scanner.nextInt();
System.out.println("姓名:");
String name = scanner.next();
System.out.println("密码:");
int ps = scanner.nextInt();
System.out.println("邮箱号:");
long email = scanner.nextLong();
// id=id+1;
register(name, ps, email);
break;
case 2:
System.out.println("姓名:");
String na = scanner.next();
System.out.println("密码:");
int psw = scanner.nextInt();
check(na, psw);
break;
case 0:
exit();
break;
default:
break;
}
}
- 登录检查和登录后的相关操作
// 登录检查和登录后的相关操作
private static void check(String name, int ps) {
// TODO Auto-generated method stub
for (int i = 0; i < username.length; i++) {
if (username[i].equals(name) && userpassword[i] == ps) {
currentid = i; // 当前登录id
System.out.println("登陆成功");
System.out.println("您可进行以下操作:" + "1:修改密码" + "2:修改邮箱" + "3:退出系统");
int swich = scanner.nextInt();
switch (swich) {
case 1:
// 修改密码
updatePassword(currentid);
break;
case 2:
// 修改邮箱
updateEmail(currentid);
break;
case 3:
break;
default:
break;
}
} else {
System.out.println("登录失败");
}
}
}
// 修改邮箱
private static void updateEmail(int id) {
// TODO Auto-generated method stub
System.out.println("-----------------修改邮箱-------------------------");
System.out.println("请输入原始密码:");
int orginalpassword = scanner.nextInt();
if (orginalpassword == userpassword[currentid]) {
System.out.println("请输入新邮箱号:");
int emailNumber = scanner.nextInt();
useremail[id] = emailNumber;
System.out.println("修改成功");
} else {
System.out.println("密码错误!");
start();
}
}
// 修改密码
private static void updatePassword(int id) {
// TODO Auto-generated method stub
// 判定密码修改的业务逻辑
System.out.println("-----------------修改密码-------------------------");
System.out.println("请输入原始密码:");
int orginalpassword = scanner.nextInt();
if (orginalpassword == userpassword[currentid]) {
System.out.println("请输入新密码:");
int currentPassword = scanner.nextInt();
userpassword[currentid] = currentPassword;
System.out.println("修改成功");
} else {
System.out.println("密码错误!");
start();
}
}
4 .注册
// 用户注册
// 由id唯一确定,id递增,通过main函数的计数器实现。
private static void register(String name, int password, long email) {
// TODO Auto-generated method stub
System.out.println("-------------------注册账号-------------------------");
int i = id;
if (true) {
userid = Arrays.copyOf(userid, userid.length + 1);
username = Arrays.copyOf(username, username.length + 1);
userpassword = Arrays.copyOf(userpassword, userpassword.length + 1);
useremail = Arrays.copyOf(useremail, useremail.length + 1);
userid[i] = id;
username[i] = name;
userpassword[i] = password;
useremail[i] = email;
}
id += 1;
System.out.println("您的个人信息如下:");
System.out.println(userid[i] + " " + username[i] + " " + userpassword[i] + " " + useremail[i]);
start();
}
5 整个程序的位置(只用一个类完成)
public class main {
// 定义用户相关属性
static int userid[] = {};
static String username[] = {};
static int userpassword[] = {};
static long useremail[] = {};
static Scanner scanner = new Scanner(System.in);//定义输入流
static int id = 0; // id计数器累加
static int currentid = 0; // 登录后的修改操作定义当前id
public static void main(String[] args) {
start();
}
//退出系统
private static void exit() {
// TODO Auto-generated method stub
exit();
}
// 登录检查和登录后的相关操作
private static void check(String name, int ps) {
// TODO Auto-generated method stub
for (int i = 0; i < username.length; i++) {
if (username[i].equals(name) && userpassword[i] == ps) {
currentid = i; // 当前登录id
System.out.println("登陆成功");
System.out.println("您可进行以下操作:" + "1:修改密码" + "2:修改邮箱" + "3:退出系统");
int swich = scanner.nextInt();
switch (swich) {
case 1:
// 修改密码
updatePassword(currentid);
break;
case 2:
// 修改邮箱
updateEmail(currentid);
break;
case 3:
break;
default:
break;
}
} else {
System.out.println("登录失败");
}
}
}
// 修改邮箱
private static void updateEmail(int id) {
// TODO Auto-generated method stub
System.out.println("-----------------修改邮箱-------------------------");
System.out.println("请输入原始密码:");
int orginalpassword = scanner.nextInt();
if (orginalpassword == userpassword[currentid]) {
System.out.println("请输入新邮箱号:");
int emailNumber = scanner.nextInt();
useremail[id] = emailNumber;
System.out.println("修改成功");
} else {
System.out.println("密码错误!");
start();
}
}
// 修改密码
private static void updatePassword(int id) {
// TODO Auto-generated method stub
// 判定密码修改的业务逻辑
System.out.println("-----------------修改密码-------------------------");
System.out.println("请输入原始密码:");
int orginalpassword = scanner.nextInt();
if (orginalpassword == userpassword[currentid]) {
System.out.println("请输入新密码:");
int currentPassword = scanner.nextInt();
userpassword[currentid] = currentPassword;
System.out.println("修改成功");
} else {
System.out.println("密码错误!");
start();
}
}
// 用户注册
// 由id唯一确定,id递增,通过main函数的计数器实现。
private static void register(String name, int password, long email) {
// TODO Auto-generated method stub
System.out.println("-------------------注册账号-------------------------");
int i = id;
if (true) {
userid = Arrays.copyOf(userid, userid.length + 1);
username = Arrays.copyOf(username, username.length + 1);
userpassword = Arrays.copyOf(userpassword, userpassword.length + 1);
useremail = Arrays.copyOf(useremail, useremail.length + 1);
userid[i] = id;
username[i] = name;
userpassword[i] = password;
useremail[i] = email;
}
id += 1;
System.out.println("您的个人信息如下:");
System.out.println(userid[i] + " " + username[i] + " " + userpassword[i] + " " + useremail[i]);
start();
}
//开始
private static void start() {
System.out.println("-----------------------------------------------------");
System.out.println(" 模 拟 注 册 页 面");
System.out.println("请选择操作: 1:注册 2:登录修改个人信息 3:退出系统 ");
System.out.println("-----------------------------------------------------");
int choice = scanner.nextInt();
switch (choice) {
case 1:
System.out.println("请输入个人信息如下:");
// System.out.println("请输入id号");
// int id = scanner.nextInt();
System.out.println("姓名:");
String name = scanner.next();
System.out.println("密码:");
int ps = scanner.nextInt();
System.out.println("邮箱号:");
long email = scanner.nextLong();
// id=id+1;
register(name, ps, email);
break;
case 2:
System.out.println("姓名:");
String na = scanner.next();
System.out.println("密码:");
int psw = scanner.nextInt();
check(na, psw);
break;
case 0:
exit();
break;
default:
break;
}
}
}