From 9d2f8d90bbfe8c409542b43a4cd9bb7c9ac3b2b3 Mon Sep 17 00:00:00 2001 From: Rumia <3063485007@qq.com> Date: Sun, 28 Sep 2025 23:03:01 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E8=BD=AF=E4=BB=B62301=E7=8E=8B=E9=BA=92?= =?UTF-8?q?=E6=99=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/README.md | 263 +++++++++++++---------------- src/AbstractQuestionGenerator.java | 11 +- src/JuniorQuestionGenerator.java | 10 +- src/MathQuestionGenerator.java | 130 +++++--------- src/PrimaryQuestionGenerator.java | 3 - src/SeniorQuestionGenerator.java | 3 - 6 files changed, 164 insertions(+), 256 deletions(-) diff --git a/doc/README.md b/doc/README.md index c2f90ac..230bd36 100644 --- a/doc/README.md +++ b/doc/README.md @@ -4,7 +4,7 @@ 本项目是一个基于Java开发的中小学数学卷子自动生成系统,支持小学、初中、高中三个学段的数学题目生成。系统采用面向对象设计,遵循Google Java Style Guide规范,具有完整的用户认证、题目生成、查重和文件管理功能。 -**【人工修改】** 本项目在大模型生成基础代码后,经过人工增强优化,在原有功能基础上新增了多项功能改进,包括文件夹结构优化、题目质量提升、用户界面体验优化等,所有修改都已在代码中明确标识。 +**【人工修改】** 本项目在大模型生成基础代码后,经过人工优化(主要是老师要求的操作数范围和自己对操作界面的优化进行修改),在原有功能基础上新增了多项功能改进,包括文件夹结构优化、题目质量提升、用户界面体验优化等,所有修改都已在代码中明确标识。 ## 功能特性 @@ -17,8 +17,8 @@ - **小学题目**:只能有+,-,*,/和()运算符 - **初中题目**:题目中至少有一个平方或开根号的运算符 - **高中题目**:题目中至少有一个sin,cos或tan的运算符 -- 操作数范围:1-5个,取值范围1-100 -- 题目数量:10-30道题 +- **操作数范围**:1-5个(小学题目至少2个),取值范围1-100 +- **题目数量**:10-30道题 #### 难度要求详细说明(附表-2) | 年级 | 难度要求 | 备注 | @@ -30,7 +30,7 @@ ### 🔄 年级切换功能 - 支持"切换为XX"命令(XX为小学、初中、高中) - 实时切换出题模式 -- 切换后自动显示新的操作菜单 +- 切换后按回车自动显示新的操作菜单 ### 🔍 题目查重功能 - 自动检测历史题目,避免重复 @@ -41,79 +41,48 @@ - **【人工修改】** 采用三级文件夹结构:`paper/用户名/年级/` - 文件名格式:`年-月-日-时-分-秒.txt` - 题目格式:带题号,题目间空行分隔 -- **【人工修改】** 试卷集中管理,按年级分类存储 +- 试卷集中管理,按年级分类存储(原来是只按用户名存储) ## 【人工修改】功能增强说明 ### 🚀 人工修改概述 -本项目在大模型生成基础代码后,经过人工增强优化,在原有功能基础上进行了以下重要改进: +在原有功能基础上进行了以下重要改进: -### 🐛 Bug修复 +### 🔧 人工修改功能详解 -**资源泄漏修复**: -- **【人工修改】** 修复了Scanner资源泄漏问题,确保程序退出时正确关闭资源 - -**Bug修复内容**: -- **【人工修改】** 修复了Scanner资源泄漏问题,添加了shutdown hook确保资源正确关闭 - -## 🔧 人工修改功能详解 - -### 1. 📁 文件夹结构优化 -- **修改位置**:`MathQuestionGenerator.java` 第272-298行 +#### 1. 📁 文件夹结构优化 +- **修改位置**:`MathQuestionGenerator.java` 第367行(createUserDirectory方法) - **修改前**:文件直接保存在用户名文件夹中,如 `张三1/2025-01-27-14-30-25.txt` - **修改后**:采用三级文件夹结构 `paper/用户名/年级/`,如 `paper/张三1/小学/2025-01-27-14-30-25.txt` - **功能**:创建paper文件夹结构,试卷集中管理 - **效果**:文件按年级分类存储,结构更清晰,便于管理 -- **代码标识**:使用 `// 【人工修改】` 注释标识 -### 2. 🎯 小学题目质量提升 -- **修改位置**:多个文件中的常量定义和方法实现 -- **修改前**:小学题目可能出现单操作数,如 `24`(无效题目) +#### 2. 🎯 小学题目质量提升 +- **修改位置**:`PrimaryQuestionGenerator.java` 第12行(getMinOperandCount方法) +- **修改前**:小学题目可能出现单操作数,如 `24`(无效题目,在老师没有说明之前AI所设计) - **修改后**:小学题目最少2个操作数,如 `24 + 15`(有效题目) -- **功能**:小学题目最少2个操作数,防止出现无效题目 +- **功能**:重写getMinOperandCount方法,确保小学题目至少有2个操作数 - **效果**:不再出现单纯的数字,确保题目有效性 -- **代码标识**:使用 `// 【人工修改】` 注释标识 - -### 3. 🔧 初中题目格式修复 -- **修改位置**:`JuniorQuestionGenerator.java` 第16-34行 -- **修改前**:初中题目可能不完整,如 `24²` 或 `√36`(缺少运算符) -- **修改后**:初中题目格式完整,如 `24² + 15` 或 `√36 × 8 - 12`(完整表达式) -- **功能**:修复平方和开方运算后缺少运算符的问题 -- **效果**:确保初中题目格式完整,符合数学表达式规范 -- **代码标识**:使用 `// 【人工修改】` 注释标识 - -### 4. 🎨 用户界面体验优化 -- **修改位置**:`MathQuestionGenerator.java` 第196-213行 -- **修改前**:生成题目后或输入错误后,用户看不到操作菜单,需要重新输入 -- **修改后**:生成题目后和输入错误后自动重新显示操作菜单 -- **功能**:生成题目后和输入错误后重新显示操作菜单 -- **效果**:用户始终能看到可用的操作选项,界面体验更友好 -- **代码标识**:使用 `// 【人工修改】` 注释标识 - -### 5. 🎯 界面交互体验优化 -- **修改位置**:`MathQuestionGenerator.java` 第245-278行、第485-501行、第199-236行 + +#### 3. 🎨 用户界面体验优化 +- **修改位置**:`MathQuestionGenerator.java` 第133行(添加exit选项) +- **修改前**:只能通过用户名密码登录,没有退出选项 +- **修改后**:支持输入'exit'退出程序,提供更好的用户控制 +- **功能**:添加退出选项,提升用户体验 +- **效果**:用户可以选择退出程序,操作更灵活 + +#### 4. 🎯 界面交互体验优化 +- **修改位置**:`MathQuestionGenerator.java` 第176行、第238行、第253行、第331行、第341行、第578行等 - **修改前**:切换模式或生成试卷后直接显示界面,界面切换突兀 - **修改后**:切换模式或生成试卷后要求按回车键继续,界面切换更自然 - **功能**:在关键操作后添加"按回车键继续"提示,提升用户体验 - **效果**:用户有时间阅读操作结果,界面切换更自然流畅 -- **代码标识**:使用 `// 【人工修改】` 注释标识 - -### 6. 📊 去重功能增强 -- **修改位置**:`MathQuestionGenerator.java` 第363-392行 -- **修改前**:所有年级的历史题目混合在一起,去重可能跨年级干扰 -- **修改后**:按年级分别加载历史题目,去重功能更精确 -- **功能**:从对应的年级文件夹加载历史题目 -- **效果**:去重功能按年级分别进行,更加精确 -- **代码标识**:使用 `// 【人工修改】` 注释标识 - -### 7. 🐛 Bug1修复:Scanner资源泄漏 -- **修改位置**:`MathQuestionGenerator.java` 第43-52行 -- **修改前**:Scanner资源没有正确关闭,可能导致资源泄漏 -- **修改后**:添加shutdown hook确保Scanner资源在程序退出时正确关闭 -- **功能**:修复资源泄漏问题,符合头歌质量分析要求 -- **效果**:确保程序退出时正确释放系统资源,避免内存泄漏 -- **代码标识**:使用 `// 【人工修改】` 注释标识 + + +**所有修改都使用 `// 【人工修改】` 注释标识,便于识别和追踪。** + + ## 技术架构 @@ -124,7 +93,7 @@ ### 📁 项目结构 ``` -project/src/ +src/ ├── MathQuestionGenerator.java # 主程序类 ├── QuestionGenerator.java # 题目生成器接口 ├── AbstractQuestionGenerator.java # 抽象题目生成器 @@ -161,18 +130,19 @@ project/src/ ### 启动程序 ```bash -java -cp project/src MathQuestionGenerator +java -jar MathQuestionGenerator.jar ``` ### 操作流程 1. **登录**:输入用户名和密码(用空格隔开),或输入'exit'退出程序 2. **查看菜单**:系统显示当前可进行的操作 -3. **生成题目**:输入数字10-30生成指定数量的题目 -4. **切换年级**:输入"切换为XX"切换到其他年级 +3. **生成题目**:输入数字10-30生成指定数量的题目,生成完成后按回车键继续 +4. **切换年级**:输入"切换为XX"切换到其他年级,切换完成后按回车键继续 5. **退出登录**:输入"-1"退出当前用户 6. **完全退出**:在登录界面输入'exit'完全退出程序 ### 操作示例 + ``` === 用户登录 === 请输入用户名和密码(用空格隔开),或输入 'exit' 退出程序: @@ -190,7 +160,17 @@ java -cp project/src MathQuestionGenerator 4. 输入 '切换为高中':切换到高中出题模式 5. 输入 '-1':退出当前用户,重新登录 -请输入操作: +请输入操作:> 15 + +生成15道小学题目成功! +文件已保存到:paper/张三1/小学/2025-01-27-14-30-25.txt +按回车键继续... + +[按回车键后显示菜单] + +=== 操作菜单 === +当前选择为小学出题 +... ``` ## 题目示例 @@ -216,6 +196,32 @@ java -cp project/src MathQuestionGenerator 3. cos(0) + sin(30) × 4 ``` +## 📸 实际操作演示 + +### 登录界面 +![登录界面](images/login_screen.png) +*图1:程序启动后的登录界面,支持用户名密码登录或输入'exit'退出* + +### 操作菜单 +![操作菜单](images/operation_menu.png) +*图2:登录成功后的操作菜单,显示当前年级和可用操作* + +### 题目生成 +![题目生成](images/question_generation.png) +*图3:生成题目过程,显示题目数量和保存位置* + +### 年级切换 +![年级切换](images/grade_switch.png) +*图4:年级切换功能演示,支持小学、初中、高中模式切换* + +### 文件输出 +![文件输出](images/file_output.png) +*图5:生成的文件结构,采用三级文件夹管理* + +### 题目示例展示 +![题目示例](images/question_examples.png) +*图6:不同年级的题目示例展示* + ## 代码规范 ### 📋 Google Java Style Guide合规性 @@ -233,66 +239,9 @@ java -cp project/src MathQuestionGenerator - 完整的异常处理 - 资源自动管理(try-with-resources) -## 评分标准符合性 - -根据项目评分标准,本系统完全符合要求: +## 📊 评分标准符合性 -| 评分类型 | 要求 | 实现状态 | -|---------|------|----------| -| 登录 | 文字提示、错误处理 | ✅ 完全符合 | -| 出题 | 年级要求、题号、换行、切换提示 | ✅ 完全符合 | -| 查重 | 去重功能、历史题目检测 | ✅ 完全符合 | -| 切换 | 年级切换、错误处理、异常处理 | ✅ 完全符合 | -| 保存 | 文件格式、路径管理 | ✅ 完全符合 | -| 代码规范 | Google Java Style Guide | ✅ 完全符合 | -| 设计合理 | 接口抽象类、类数量、方法长度 | ✅ 完全符合 | - -## 开发环境 - -- **Java版本**:JDK 8+(我是JDK21) -- **编译工具**:javac -- **运行环境**:JRE 8+ -- **操作系统**:Windows/Linux/macOS(我是Windows) - -## 编译和运行 - -### 编译所有文件 -```bash -javac project/src/*.java -``` - -### 运行程序 -```bash -java -cp project/src MathQuestionGenerator -``` - -## 文件输出 - -**【人工修改】** 程序采用三级文件夹结构,所有试卷统一存放在 `paper` 文件夹中: - -``` -project/ -├── paper/ # 【人工修改】试卷集中存放文件夹 -│ ├── 张三1/ # 用户文件夹 -│ │ ├── 小学/ # 【人工修改】年级子文件夹 -│ │ │ ├── 2025-01-27-14-30-25.txt -│ │ │ └── 2025-01-27-15-45-12.txt -│ │ ├── 初中/ -│ │ │ └── 2025-01-27-16-20-30.txt -│ │ └── 高中/ -│ │ └── 2025-01-27-17-10-45.txt -│ ├── 李四1/ -│ │ ├── 小学/ -│ │ ├── 初中/ -│ │ └── 高中/ -│ └── 王五1/ -│ ├── 小学/ -│ ├── 初中/ -│ └── 高中/ -└── src/ # 源代码文件 -``` - -## 📊 评分要求对照 +### 功能要求对照 | 评分项目 | 要求 | 实现状态 | 说明 | |---------|------|---------|------| @@ -304,10 +253,48 @@ project/ | **查重功能** | 有查重功能 | ✅ 已实现 | 完整的题目去重机制 | | **切换功能** | 有切换功能 | ✅ 已实现 | 支持小学/初中/高中模式切换 | | **保存功能** | 使用相对路径 | ✅ 已实现 | 文件保存在paper文件夹中 | + +### 代码质量要求 + +| 评分项目 | 要求 | 实现状态 | 说明 | +|---------|------|---------|------| | **代码规范** | 符合Google规范 | ✅ 已实现 | 完全符合Google Java Style Guide | | **设计合理性** | 有接口和抽象类 | ✅ 已实现 | 使用策略模式、模板方法模式 | | **设计合理性** | 方法≤40行 | ✅ 已实现 | 所有方法都符合行数限制 | -| **Bug修复** | 资源泄漏 | ✅ 已实现 | 修复了Scanner资源泄漏问题 | +| **Bug修复** | 资源泄漏 | ✅ 已实现 | 修复了输入流读取问题 | + +## 开发环境 + +- **Java版本**:JDK 21(推荐JDK 8+) +- **编译工具**:javac +- **运行环境**:JRE 21(推荐JRE 8+) +- **操作系统**:Windows 11(推荐Windows 10+、macOS 10.14+、Ubuntu 18.04+) +- **开发工具**:IntelliJ IDEA(可选) +- **命令行工具**:PowerShell/CMD(注:使用命令行工具运行代码,如果遇到文字乱码或文字无法输入的问题,建议查看 ⚠️ 可能遇到的问题 部分) + +## 文件输出 + +**【人工修改】** 程序采用三级文件夹结构,所有试卷统一存放在 `paper` 文件夹中: + +``` +paper/ # 试卷集中存放文件夹(运行时生成) +├── 张三1/ # 用户文件夹 +│ ├── 小学/ # 年级子文件夹 +│ │ ├── 2025-01-27-14-30-25.txt +│ │ └── 2025-01-27-15-45-12.txt +│ ├── 初中/ +│ │ └── 2025-01-27-16-20-30.txt +│ └── 高中/ +│ └── 2025-01-27-17-10-45.txt +├── 李四1/ +│ ├── 小学/ +│ ├── 初中/ +│ └── 高中/ +└── 王五1/ + ├── 小学/ + ├── 初中/ + └── 高中/ +``` ## 项目特色 @@ -320,14 +307,14 @@ project/ - 完全符合Google Java Style Guide - 完整的文档注释 - 健壮的错误处理 -- **【人工修改】** 修复了Scanner资源泄漏问题 -- **【人工修改】** 所有修改都使用 `// 【人工修改】` 标识 +- 修复了输入流读取问题 +- 所有人工修改都使用 `// 【人工修改】` 标识 ### 🚀 用户体验 - 直观的操作界面 - 清晰的功能提示 - 友好的错误信息 -- **【人工修改】** 生成题目后自动显示操作菜单 +- **【人工修改】** 生成题目后要求按回车键继续,界面切换更自然 - **【人工修改】** 支持'exit'命令退出程序 ### 📊 功能完整 @@ -335,7 +322,6 @@ project/ - 支持多种操作模式 - 完整的文件管理 - **【人工修改】** 三级文件夹结构,试卷集中管理 -- **【人工修改】** 修复了资源泄漏问题,符合头歌质量分析要求 ## ⚠️ 可能遇到的问题(主要是我自己写代码调试的时候遇到的,应该也就这一个比较容易遇到) @@ -347,7 +333,7 @@ project/ **解决方案**: -#### 方法1:修改控制台编码(应该是可以的,但我没有成功) +#### 方法1:修改控制台编码(应该是可以的,但因为是暂时性的,我没有试过) ```cmd # 在CMD中运行 chcp 65001 @@ -386,6 +372,8 @@ chcp ## 作者信息 +- **班级**:软件2301 +- **姓名**:王麒晟 - **项目类型**:个人项目 - **开发语言**:Java - **设计模式**:策略模式、模板方法模式、工厂模式 @@ -393,21 +381,8 @@ chcp - **项目状态**:完成,符合评分要求 - **【人工修改】** 经过人工增强优化,功能更加完善 -## 【人工修改】代码标识说明 - -本项目中的所有人工修改都使用 `// 【人工修改】` 注释进行标识,包括: - -1. **文件夹结构优化**:`MathQuestionGenerator.java` 第272-298行 -2. **小学题目质量提升**:多个文件中的常量定义和方法实现 -3. **初中题目格式修复**:`JuniorQuestionGenerator.java` 第16-34行 -4. **用户界面体验优化**:`MathQuestionGenerator.java` 第196-213行 -5. **去重功能增强**:`MathQuestionGenerator.java` 第363-392行 -6. **Bug1修复:Scanner资源泄漏**:`MathQuestionGenerator.java` 第43-52行 -7. **抽象类方法优化**:`AbstractQuestionGenerator.java` 第29-41行 -8. **小学生成器重写**:`PrimaryQuestionGenerator.java` 第8-12行 - -所有修改都已在代码中明确标识,便于识别和追踪。 --- -*本项目完全符合软件工程导论个人项目的所有要求,经过人工增强优化后功能更加完善。* +*本项目完全符合软件工程导论个人项目的所有要求,经过人工增强优化后功能更加完善。* + diff --git a/src/AbstractQuestionGenerator.java b/src/AbstractQuestionGenerator.java index 249972a..80580f8 100644 --- a/src/AbstractQuestionGenerator.java +++ b/src/AbstractQuestionGenerator.java @@ -1,18 +1,9 @@ -// 【人工修复】删除未使用的导入,消除IDEA警告 -// 修改前:import java.util.Random; 从未使用,IDEA显示警告 -// 修改后:删除未使用的导入,简化代码 - /** * 抽象题目生成器 */ public abstract class AbstractQuestionGenerator implements QuestionGenerator { - protected static final String[] BASIC_OPERATORS = {"+", "-", "×", "÷"}; - - // 【人工修复】删除未使用的方法,消除IDEA警告 - // 修改前:generateOperands和generateOperandCount方法从未使用,IDEA显示警告 - // 修改后:删除这些未使用的方法,简化代码结构 - // 注意:这些方法原本是为了提供通用功能,但在得知小学操作数至少为2时,实际实现中每个子类都有自己的逻辑,故删掉 + static final String[] BASIC_OPERATORS = {"+", "-", "×", "÷"}; /** * 获取最少操作数(子类可重写) diff --git a/src/JuniorQuestionGenerator.java b/src/JuniorQuestionGenerator.java index 4cd3dda..3cc4812 100644 --- a/src/JuniorQuestionGenerator.java +++ b/src/JuniorQuestionGenerator.java @@ -12,10 +12,7 @@ public class JuniorQuestionGenerator extends AbstractQuestionGenerator { // 初中题目:题目中至少有一个平方或开根号的运算符,严格按照附表-2要求 int pos = random.nextInt(operands.length); boolean useSquare = random.nextBoolean(); - - // 【人工修改】修复初中题目生成逻辑,确保平方和开方后有正确的运算符和操作数 - // 修改前:初中题目可能不完整,如"24²"或"√36"(缺少运算符) - // 修改后:初中题目格式完整,如"24² + 15"或"√36 × 8 - 12"(完整表达式) + if (useSquare) { // 平方运算 question.append(operands[pos]).append("²"); @@ -25,10 +22,7 @@ public class JuniorQuestionGenerator extends AbstractQuestionGenerator { operands[pos] = sqrtBase * sqrtBase; // 生成完全平方数 question.append("√").append(operands[pos]); } - - // 【人工修改】修复剩余部分添加逻辑,确保平方/开方后有运算符和操作数 - // 修改前:复杂的条件判断,可能导致运算符缺失 - // 修改后:简化逻辑,确保所有剩余操作数都有运算符 + for (int i = 0; i < operands.length; i++) { if (i != pos) { // 添加运算符和操作数 diff --git a/src/MathQuestionGenerator.java b/src/MathQuestionGenerator.java index fd2a78b..ef3b748 100644 --- a/src/MathQuestionGenerator.java +++ b/src/MathQuestionGenerator.java @@ -38,17 +38,10 @@ public class MathQuestionGenerator { // 当前登录用户 private static User currentUser = null; - private static final Scanner scanner = new Scanner(System.in); + private static final Scanner scanner = new Scanner(System.in, java.nio.charset.StandardCharsets.UTF_8); - // 【人工修改】添加程序退出时的资源清理 - // 修改前:Scanner资源没有正确关闭,可能导致资源泄漏 - // 修改后:添加shutdown hook确保Scanner资源正确关闭 static { - Runtime.getRuntime().addShutdownHook(new Thread(() -> { - if (scanner != null) { - scanner.close(); - } - })); + Runtime.getRuntime().addShutdownHook(new Thread(scanner::close)); } static { @@ -92,9 +85,6 @@ public class MathQuestionGenerator { public static void main(String[] args) { showWelcomeMessage(); - // 【人工修复】修复while循环警告,简化循环逻辑 - // 修改前:使用shouldContinue变量但设置后立即break,IDEA提示条件始终为true - // 修改后:直接使用while(true)配合break,逻辑更简洁清晰 while (true) { Boolean loginResult = login(); if (loginResult == null) { @@ -128,7 +118,8 @@ public class MathQuestionGenerator { /** * 用户登录验证 - * @return 登录是否成功,null表示用户选择退出 + * @return 登录结果:true表示成功,false表示失败,null表示用户选择退出 + * 注意:返回null是设计需要,用于区分退出和失败 */ private static Boolean login() { System.out.println("=== 用户登录 ==="); @@ -273,17 +264,25 @@ public class MathQuestionGenerator { */ private static void waitForEnter() { try { - // 【人工修复】修复InputStream.read()结果被忽略的警告 - // 修改前:System.in.read()的结果被忽略,IDEA显示警告 - // 修改后:将读取结果赋值给变量,消除警告 - @SuppressWarnings("unused") - int readResult = System.in.read(); - // readResult用于等待用户按回车键,不需要使用具体值 + // 等待用户按回车键,读取直到遇到换行符 + int ch; + while ((ch = System.in.read()) != -1 && ch != '\n') { + // 继续读取直到遇到换行符 + } } catch (IOException e) { // 忽略读取错误 } } + /** + * 显示"按回车键继续"提示并等待用户输入 + */ + private static void showPressEnterAndWait() { + System.out.println("按回车键继续..."); + System.out.flush(); + waitForEnter(); + } + /** * 显示操作菜单 * @param currentGrade 当前年级类型 @@ -309,25 +308,23 @@ public class MathQuestionGenerator { * @return 切换是否成功 */ private static boolean handleSwitchCommand(String command) { - // 【人工修复】修复字符串越界风险,添加长度检查 - // 修改前:command.substring(3) 可能抛出StringIndexOutOfBoundsException - // 修改后:先检查命令长度,确保安全访问 if (command.length() < 3) { System.out.println(); System.out.println("✗ 请输入小学、初中和高中三个选项中的一个"); - System.out.println("按回车键继续..."); - System.out.flush(); - try { - @SuppressWarnings("unused") - int readResult = System.in.read(); - } catch (IOException e) { - // 忽略读取错误 - } + showPressEnterAndWait(); return false; } String targetGrade = command.substring(3).trim(); if (targetGrade.equals("小学") || targetGrade.equals("初中") || targetGrade.equals("高中")) { + if (currentUser == null) { + System.out.println(); + System.out.println("✗ 用户未登录,无法切换年级"); + System.out.println("按回车键继续..."); + System.out.flush(); + waitForEnter(); + return false; + } currentUser = new User(currentUser.username(), currentUser.password(), targetGrade); System.out.println(); System.out.println("✓ 切换成功!当前为" + targetGrade + "出题模式"); @@ -336,19 +333,7 @@ public class MathQuestionGenerator { // 修改后:切换成功后要求按回车键,让用户有时间阅读信息,界面切换更自然 System.out.println("按回车键继续..."); System.out.flush(); - try { - // 【人工修复】修复InputStream.read()结果被忽略的警告 - // 修改前:System.in.read()的结果被忽略,IDEA显示警告 - // 修改后:将读取结果赋值给变量,消除警告 - @SuppressWarnings("unused") - int readResult = System.in.read(); - // 【人工修复】修复空if语句体警告 - // 修改前:if (readResult == -1) { } 空语句体,IDEA显示警告 - // 修改后:删除空的if语句,因为IOException已经被catch块处理 - // readResult用于等待用户按回车键,不需要检查具体值 - } catch (IOException e) { - // 忽略读取错误 - } + waitForEnter(); return true; } else { System.out.println(); @@ -358,19 +343,7 @@ public class MathQuestionGenerator { // 修改后:切换失败后要求按回车键,让用户有时间阅读错误信息,界面切换更自然 System.out.println("按回车键继续..."); System.out.flush(); - try { - // 【人工修复】修复InputStream.read()结果被忽略的警告 - // 修改前:System.in.read()的结果被忽略,IDEA显示警告 - // 修改后:将读取结果赋值给变量,消除警告 - @SuppressWarnings("unused") - int readResult = System.in.read(); - // 【人工修复】修复空if语句体警告 - // 修改前:if (readResult == -1) { } 空语句体,IDEA显示警告 - // 修改后:删除空的if语句,因为IOException已经被catch块处理 - // readResult用于等待用户按回车键,不需要检查具体值 - } catch (IOException e) { - // 忽略读取错误 - } + waitForEnter(); return false; } } @@ -395,11 +368,12 @@ public class MathQuestionGenerator { // 【人工修改】创建paper文件夹结构:paper->用户名->年级 // 修改前:File userDir = new File(currentUser.getUsername()); // 修改后:创建三级文件夹结构,试卷集中管理 + if (currentUser == null) { + throw new IllegalStateException("用户未登录,无法创建文件夹"); + } + File paperDir = new File("paper"); if (!paperDir.exists()) { - // 【人工修复】修复File.mkdir()结果被忽略的警告 - // 修改前:paperDir.mkdir()的结果被忽略,IDEA显示警告 - // 修改后:检查mkdir()返回值,确保文件夹创建成功 boolean created = paperDir.mkdir(); if (!created) { System.err.println("警告:无法创建paper文件夹"); @@ -408,9 +382,6 @@ public class MathQuestionGenerator { File userDir = new File(paperDir, currentUser.username()); if (!userDir.exists()) { - // 【人工修复】修复File.mkdir()结果被忽略的警告 - // 修改前:userDir.mkdir()的结果被忽略,IDEA显示警告 - // 修改后:检查mkdir()返回值,确保文件夹创建成功 boolean created = userDir.mkdir(); if (!created) { System.err.println("警告:无法创建用户文件夹:" + currentUser.username()); @@ -426,9 +397,6 @@ public class MathQuestionGenerator { for (File gradeDir : gradeDirs) { if (!gradeDir.exists()) { - // 【人工修复】修复File.mkdir()结果被忽略的警告 - // 修改前:gradeDir.mkdir()的结果被忽略,IDEA显示警告 - // 修改后:检查mkdir()返回值,确保文件夹创建成功 boolean created = gradeDir.mkdir(); if (!created) { System.err.println("警告:无法创建年级文件夹:" + gradeDir.getName()); @@ -475,9 +443,6 @@ public class MathQuestionGenerator { int attempts = 0; do { - // 【人工修改】根据年级设置不同的最少操作数 - // 修改前:int operandCount = random.nextInt(5) + 1; // 可能生成单操作数 - // 修改后:根据年级设置最少操作数,小学最少2个,其他年级最少1个 int minOperandCount = getMinOperandCountForGrade(generator); int operandCount = random.nextInt(MAX_OPERAND_COUNT - minOperandCount + 1) + minOperandCount; int[] operands = new int[operandCount]; @@ -518,7 +483,9 @@ public class MathQuestionGenerator { private static Set loadHistoryQuestions(File userDir) { Set historyQuestions = new HashSet<>(); - // 【人工修改】从对应的年级文件夹加载历史题目 + if (currentUser == null) { + throw new IllegalStateException("用户未登录,无法加载历史题目"); + } String currentGrade = currentUser.grade(); File gradeDir = new File(userDir, currentGrade); @@ -529,13 +496,10 @@ public class MathQuestionGenerator { File[] files = gradeDir.listFiles((dir, name) -> name.endsWith(".txt")); if (files != null) { for (File file : files) { - try (BufferedReader reader = new BufferedReader(new FileReader(file))) { + try (BufferedReader reader = new BufferedReader(new FileReader(file, java.nio.charset.StandardCharsets.UTF_8))) { String line; while ((line = reader.readLine()) != null) { if (line.matches("\\d+\\.\\s+.+")) { - // 【人工修复】修复字符串越界风险,添加安全检查 - // 修改前:line.indexOf(".") 可能返回-1,导致substring(-1+1)问题 - // 修改后:先检查indexOf结果,确保安全访问 int dotIndex = line.indexOf("."); if (dotIndex != -1 && dotIndex + 1 < line.length()) { String question = line.substring(dotIndex + 1).trim(); @@ -571,7 +535,9 @@ public class MathQuestionGenerator { * @return 输出文件 */ private static File createOutputFile(File userDir) { - // 【人工修改】将文件保存到对应的年级文件夹 + if (currentUser == null) { + throw new IllegalStateException("用户未登录,无法创建输出文件"); + } String currentGrade = currentUser.grade(); File gradeDir = new File(userDir, currentGrade); @@ -586,7 +552,7 @@ public class MathQuestionGenerator { * @param outputFile 输出文件 */ private static void writeQuestionsToFile(List questions, File outputFile) { - try (PrintWriter writer = new PrintWriter(new FileWriter(outputFile))) { + try (PrintWriter writer = new PrintWriter(new FileWriter(outputFile, java.nio.charset.StandardCharsets.UTF_8))) { for (int i = 0; i < questions.size(); i++) { writer.println((i + 1) + ". " + questions.get(i)); if (i < questions.size() - 1) { @@ -614,24 +580,12 @@ public class MathQuestionGenerator { // 修改后:生成题目后要求按回车键,让用户有时间阅读生成结果,界面切换更自然 System.out.println("按回车键继续..."); System.out.flush(); - try { - // 【人工修复】修复InputStream.read()结果被忽略的警告 - // 修改前:System.in.read()的结果被忽略,IDEA显示警告 - // 修改后:将读取结果赋值给变量,消除警告 - @SuppressWarnings("unused") - int readResult = System.in.read(); - // readResult用于等待用户按回车键,不需要使用具体值 - } catch (IOException e) { - // 忽略读取错误 - } + waitForEnter(); System.out.println(); } /** * 用户类,存储用户信息 - * 【人工修复】将User类改为记录类,消除IDEA警告 - * 修改前:使用传统类定义,IDEA提示"类可以是记录类" - * 修改后:使用Java 14+的记录类语法,代码更简洁 */ record User(String username, String password, String grade) { // 记录类自动生成构造函数、getter方法、equals、hashCode和toString diff --git a/src/PrimaryQuestionGenerator.java b/src/PrimaryQuestionGenerator.java index d592f57..19dc32a 100644 --- a/src/PrimaryQuestionGenerator.java +++ b/src/PrimaryQuestionGenerator.java @@ -24,9 +24,6 @@ public class PrimaryQuestionGenerator extends AbstractQuestionGenerator { // 随机添加括号,确保括号内也有运算符 if (i < operands.length - 1 && random.nextBoolean()) { question.append(" ").append(op).append(" (").append(operands[i]); - // 【人工修复】修复逻辑错误,移除多余的边界检查 - // 修改前:if (i + 1 < operands.length) 是多余的,因为外层条件已经确保i < operands.length - 1 - // 修改后:直接处理i+1位置的操作数,因为条件已经保证其存在 op = BASIC_OPERATORS[random.nextInt(BASIC_OPERATORS.length)]; question.append(" ").append(op).append(" ").append(operands[i + 1]).append(")"); i++; // 手动增加i以跳过已处理的操作数 diff --git a/src/SeniorQuestionGenerator.java b/src/SeniorQuestionGenerator.java index 51fbca1..351d906 100644 --- a/src/SeniorQuestionGenerator.java +++ b/src/SeniorQuestionGenerator.java @@ -22,9 +22,6 @@ public class SeniorQuestionGenerator extends AbstractQuestionGenerator { question.append(function).append("(").append(operands[i]).append(")"); } else { // 其他位置使用基本运算符 - // 【人工修复】修复条件 'functionPos == 0'始终为false的警告 - // 修改前:if (i > 0 || functionPos == 0) 中functionPos == 0永远不会执行 - // 修改后:简化条件逻辑,只在i > 0时添加运算符 if (i > 0) { String op = BASIC_OPERATORS[random.nextInt(BASIC_OPERATORS.length)]; question.append(" ").append(op).append(" "); -- 2.34.1 From 96f76a6729ab303a5afeb67ee314085e8b22394a Mon Sep 17 00:00:00 2001 From: Rumia <3063485007@qq.com> Date: Sun, 28 Sep 2025 23:17:10 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E8=BD=AF=E4=BB=B62301=E7=8E=8B=E9=BA=92?= =?UTF-8?q?=E6=99=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/QuestionGenerator.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/QuestionGenerator.java b/src/QuestionGenerator.java index 633d643..93d423a 100644 --- a/src/QuestionGenerator.java +++ b/src/QuestionGenerator.java @@ -11,4 +11,4 @@ public interface QuestionGenerator { * @return 生成的题目 */ String generateQuestion(int[] operands, Random random); -} +} \ No newline at end of file -- 2.34.1 From 24d53cefa89c360c377df6417ccc556cb3343dc0 Mon Sep 17 00:00:00 2001 From: Rumia <3063485007@qq.com> Date: Mon, 29 Sep 2025 15:01:45 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E8=BD=AF=E4=BB=B62301=E7=8E=8B=E9=BA=92?= =?UTF-8?q?=E6=99=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/README.md | 51 +++++++++++++++++++++++++++-- doc/images/file_output.png | Bin 0 -> 23467 bytes doc/images/grade_switch.png | Bin 0 -> 12591 bytes doc/images/login_screen.png | Bin 0 -> 42345 bytes doc/images/operation_menu.png | Bin 0 -> 54266 bytes doc/images/question_examples.png | Bin 0 -> 26471 bytes doc/images/question_generation.png | Bin 0 -> 17295 bytes 7 files changed, 49 insertions(+), 2 deletions(-) create mode 100644 doc/images/file_output.png create mode 100644 doc/images/grade_switch.png create mode 100644 doc/images/login_screen.png create mode 100644 doc/images/operation_menu.png create mode 100644 doc/images/question_examples.png create mode 100644 doc/images/question_generation.png diff --git a/doc/README.md b/doc/README.md index 230bd36..ce4d2af 100644 --- a/doc/README.md +++ b/doc/README.md @@ -128,6 +128,53 @@ src/ ## 使用说明 +### 编译JAR文件 + +#### 方法1:使用javac和jar命令(推荐) + +**步骤1:编译Java源文件** +```bash +# 创建输出目录 +mkdir -p out/production/project + +# 编译所有Java文件 +javac -d out/production/project -encoding UTF-8 src/*.java +``` + +**步骤2:创建MANIFEST.MF文件** +```bash +# 创建MANIFEST.MF文件(Windows PowerShell) +New-Item -ItemType File -Name "MANIFEST.MF" -Value "Manifest-Version: 1.0`nMain-Class: MathQuestionGenerator`n" + +# 或者使用文本编辑器手动创建MANIFEST.MF文件,内容如下: +# Manifest-Version: 1.0 +# Main-Class: MathQuestionGenerator +``` + +**步骤3:打包为JAR文件** +```bash +# 创建JAR文件(只包含src文件夹的内容) +jar cfm MathQuestionGenerator.jar MANIFEST.MF -C out/production/project . +``` + +**完整示例**: +```bash +# 在项目根目录下执行以下命令 +mkdir -p out/production/project +javac -d out/production/project -encoding UTF-8 src/*.java +New-Item -ItemType File -Name "MANIFEST.MF" -Value "Manifest-Version: 1.0`nMain-Class: MathQuestionGenerator`n" +jar cfm MathQuestionGenerator.jar MANIFEST.MF -C out/production/project . +java -jar MathQuestionGenerator.jar +``` + +#### 方法2:使用IDE(如IntelliJ IDEA) + +1. **打开项目**:在IDE中打开src文件夹 +2. **构建项目**:Build → Build Project +3. **创建JAR**:File → Project Structure → Artifacts → JAR → From modules with dependencies +4. **设置主类**:选择MathQuestionGenerator作为Main Class +5. **构建JAR**:Build → Build Artifacts + ### 启动程序 ```bash java -jar MathQuestionGenerator.jar @@ -218,9 +265,9 @@ java -jar MathQuestionGenerator.jar ![文件输出](images/file_output.png) *图5:生成的文件结构,采用三级文件夹管理* -### 题目示例展示 +### 题目示例展示(此为小学题目) ![题目示例](images/question_examples.png) -*图6:不同年级的题目示例展示* +*图6:题目示例展示* ## 代码规范 diff --git a/doc/images/file_output.png b/doc/images/file_output.png new file mode 100644 index 0000000000000000000000000000000000000000..09aeaaa11a11b1e60aaac88bced735190cbe74d4 GIT binary patch literal 23467 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 literal 0 HcmV?d00001 diff --git a/doc/images/grade_switch.png b/doc/images/grade_switch.png new file mode 100644 index 0000000000000000000000000000000000000000..7b35960fd22a17db36ccd82e3afdefc72a614095 GIT binary patch literal 12591 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 literal 0 HcmV?d00001 diff --git a/doc/images/login_screen.png b/doc/images/login_screen.png new file mode 100644 index 0000000000000000000000000000000000000000..37877e1f4004e49a19ffbb272ad952821788c21d GIT binary patch literal 42345 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 Pz{kqm#;od`2kO57h=B25 literal 0 HcmV?d00001 diff --git a/doc/images/operation_menu.png b/doc/images/operation_menu.png new file mode 100644 index 0000000000000000000000000000000000000000..dc8bb2dde203c9a19b64752051fe49c8c5a310a1 GIT binary patch literal 54266 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 S5_WJ50 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 m{)&kIEt&lP