pull/1/head
杨博文 5 months ago
parent db22348a2a
commit 01dd55cd08

@ -1,8 +1,5 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="MavenRunner">
<option name="jreName" value="17" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_17" default="true" project-jdk-name="17" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/out" />
</component>

@ -1,5 +0,0 @@
public class Main {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}

@ -0,0 +1,9 @@
package mathpuzzle;
import mathpuzzle.controller.StartController;
public class Main {
public static void main(String[] args) {
StartController startController = new StartController();
startController.start();
}
}

@ -0,0 +1,54 @@
package mathpuzzle.controller;
import java.util.Scanner;
import mathpuzzle.entity.User;
import mathpuzzle.system.LogSystem;
public class StartController {
public void start() {
LogSystem logSystem = new LogSystem();
logSystem.userHashMapInit();
Scanner scanner = new Scanner(System.in);
while (true) {
User user = logSystem.login();
if (user == null) {
continue;
}
while (true) {
System.out.println("准备生成 " + user.getLevel() + "数学题目,请输入生成题目数量(输入-1将退出当前用户重新登录");
String input = scanner.nextLine();
try {
if ("-1".equals(input)) {
System.out.println("退出当前用户");
break;
}
int count = Integer.parseInt(input);
if (count < 10 || count > 30) {
System.out.println("题目数量必须在10-30之间");
continue;
}
//handleQuestionGeneration(user, count);
} catch (NumberFormatException e) {
handleLevelSwitch(user, input);
}
}
}
}
private void handleLevelSwitch(User user, String input) {
if (input.startsWith("切换为")) {
String newLevel = input.substring(3);
if ("小学".equals(newLevel) || "初中".equals(newLevel) || "高中".equals(newLevel)) {
user.setLevel(newLevel);
} else {
System.out.println("请输入小学、初中和高中三个选项中的一个");
}
} else {
System.out.println("无效输入。请输入题目数量或'切换为 XX'指令。");
}
}
}

@ -0,0 +1,25 @@
package mathpuzzle.entity;
public class User {
private String name;
private String password;
private String level;
public User(String name, String password, String level) {
this.name = name;
this.password = password;
this.level = level;
}
public String getName() {
return name;
}
public String getPassword() {
return password;
}
public String getLevel() {
return level;
}
public void setLevel(String newLevel) {
level = newLevel;
}
}

@ -0,0 +1,50 @@
package mathpuzzle.system;
import mathpuzzle.entity.User;
import java.util.HashMap;
import java.util.Scanner;
public class LogSystem {
private HashMap<String, User> userHashMap = new HashMap<String, User>();
public void userHashMapInit() {
// 小学
userHashMap.put("张三1", new User("张三 1", "123", "小学"));
userHashMap.put("张三2", new User("张三 2", "123", "小学"));
userHashMap.put("张三3", new User("张三 3", "123", "小学"));
// 初中
userHashMap.put("李四1", new User("李四 1", "123", "初中"));
userHashMap.put("李四2", new User("李四 2", "123", "初中"));
userHashMap.put("李四3", new User("李四 3", "123", "初中"));
// 高中
userHashMap.put("王五1", new User("王五 1", "123", "高中"));
userHashMap.put("王五2", new User("王五 2", "123", "高中"));
userHashMap.put("王五3", new User("王五 3", "123", "高中"));
}
public User login() {
System.out.println("请输入用户名和密码,两者之间用空格隔开");
while(true) {
Scanner scanner = new Scanner(System.in);
String[] info = scanner.nextLine().split(" ");
if(info.length != 2) {
System.out.println("请输入正确格式");
continue;
} else {
String name = info[0];
String password = info[1];
User user = userHashMap.get(name);
if (user == null) {
System.out.println("输入正确的用户名、密码");
continue;
}
else if (!user.getPassword().equals(password)) {
System.out.println("输入正确的用户名、密码");
continue;
}
else {
System.out.println("登录成功");
return user;
}
}
}
}
}
Loading…
Cancel
Save