主程序
package UserLoginOrRegister;
import LoginOperate.LoginOperate;
import RegisterOperate.RegisterOperate;
import java.util.Scanner;
public class UserLoginOrRegister {
public static Scanner in=new Scanner(System.in);
//键盘输入放在main函数内也行
public static void main(String[] args){
System.out.println("<<欢迎进入本系统>>");
System.out.println("请选择(1.已有账户 0.还未注册)");
boolean judge=true;
//judge初始化为true让while循环先运行一次
int number=0;
while(judge) {
System.out.printf("请输入>>:");
int flag = in.nextInt();
//指令正确则judge赋值false在执行完指令后结束while循环
if (flag == 1) {
LoginOperate.loginOperate();
//登录系统
judge=false;
} else if (flag == 0) {
RegisterOperate.registerOperate();
//注册系统
judge=false;
} else {
System.out.println("无效指令,请重新输入!");
number++;
if(number==3){
System.out.println("请稍后再试!");
judge=false;
//指令错误3次则judge赋值false直接结束while循环
}
}
}
System.out.println("系统操作结束");
}
}
注册系统
package RegisterOperate;
import UserDatabase.UserDatabase;
import java.util.ArrayList;
import java.util.Scanner;
public class RegisterOperate {
public static ArrayList<UserDatabase>userDatabaseArrayList=new ArrayList<>();
//存储用户信息的集合
public static void registerOperate(){
System.out.println("<<欢迎来到注册界面>>");
System.out.printf("请输入昵称:");
Scanner in=new Scanner(System.in);
String name=in.nextLine();
System.out.printf("请输入密码:");
String password=in.next();
UserDatabase ud=new UserDatabase(name,password);
//全参构造对象
userDatabaseArrayList.add(ud);
//将用户信息存储到集合
System.out.println("注册成功!");
}
}
登录系统
package LoginOperate;
import UserDatabase.UserDatabase;
import java.util.Scanner;
import static RegisterOperate.RegisterOperate.userDatabaseArrayList;
public class LoginOperate {
public static void loginOperate(){
System.out.println("<<欢迎来到登录界面>>");
System.out.printf("请输入昵称:");
Scanner in=new Scanner(System.in);
String name=in.nextLine();
System.out.printf("请输入密码:");
String password=in.next();
ergodic(name,password);
//判断昵称及密码是否正确
}
public static void ergodic(String name,String password){
int i;
for (i = 0; i < userDatabaseArrayList.size(); i++) {
UserDatabase ud=new UserDatabase();
ud=userDatabaseArrayList.get(i);
if(!ud.getName().equals(name)){
System.out.println("用户名错误");
}
if(ud.getPassword().equals(password)){
System.out.println("密码错误");
}
//!符表示否定则昵称或密码不正确时提示
}
if(i==userDatabaseArrayList.size()){
System.out.println("查无此人,请注册!");
}
}
}
用户信息类
package UserDatabase;
public class UserDatabase {
private String name;
private String password;
public UserDatabase(){
}
//无参构造
public UserDatabase(String name,String password){
this.name=name;
this.password=password;
}
//全参构造
public void setName(String name){
this.name=name;
}
public void setPassword(String password){
this.password=password;
}
public String getName(){
return name;
}
public String getPassword(){
return password;
}
}
代码还有很多待改进的地方.