diff --git a/src/UserManager.java b/src/UserManager.java new file mode 100644 index 0000000..1ee3d23 --- /dev/null +++ b/src/UserManager.java @@ -0,0 +1,74 @@ +import java.util.HashMap; +import java.util.Map; + +public class UserManager { + private Map users = new HashMap<>(); // 存储所有用户信息 + private User currentUser; // 当前登录用户 + private String currentType; // 当前题目类型 + + public boolean login(String username, String password) { + // 检查用户是否存在且密码正确 + if (users.containsKey(username)) { + User user = users.get(username); + if (user.validateCredentials(username, password)) { + currentUser = user; + currentType = user.getUserType(); + System.out.println("登录成功"); + return true; + } + else{ + System.out.println("密码错误,请重试"); + } + } + else{ + System.out.println("该账号不存在,请重试"); + } + return false; + } + + public void logout() { + //用户退出 + currentUser = null; + currentType = null; + } + + public boolean switchUserType(String newType) { + //切换用户的出题类型 + if (currentUser != null) { + currentType = newType; + return true; + } + return false; + } + + public boolean isLoggedIn() { + // 检查用户是否已登录 + return currentUser != null; + } + + public User getCurrentUser() { + //获取当前用户信息 + return currentUser; + } + + private void initializeUsers() { + // 初始化预设账户 + + users.put("张三1", new User("张三1", "123", "小学")); + users.put("张三2", new User("张三2", "123", "小学")); + users.put("张三3", new User("张三3", "123", "小学")); + users.put("李四1", new User("李四1", "123", "初中")); + users.put("李四2", new User("李四2", "123", "初中")); + users.put("李四3", new User("李四3", "123", "初中")); + users.put("王五1", new User("王五1", "123", "高中")); + users.put("王五2", new User("王五2", "123", "高中")); + users.put("王五3", new User("王五3", "123", "高中")); + } + + public UserManager(){ + //构造函数初始化 + initializeUsers(); + } +} + +