答案:通过设计Student类和GradeManager类实现增删改查功能,使用ArrayList管理学生信息,并提供控制台菜单进行交互操作。

开发一个简易成绩管理系统在Java中可以通过面向对象的方式实现,重点是设计合理的类结构和基础的增删改查功能。下面是一个简单但完整的实现思路和代码示例。
系统的核心是学生信息的管理,每个学生包含姓名、学号和成绩。可以创建一个Student类来封装这些属性。
public class Student {
private String id; // 学号
private String name; // 姓名
private double score; // 成绩
public Student(String id, String name, double score) {
this.id = id;
this.name = name;
this.score = score;
}
// Getter 和 Setter 方法
public String getId() { return id; }
public void setId(String id) { this.id = id; }
public String getName() { return name; }
public void setName(String name) { this.name = name; }
public double getScore() { return score; }
public void setScore(double score) { this.score = score; }
@Override
public String toString() {
return "学号: " + id + ", 姓名: " + name + ", 成绩: " + score;
}
}
使用ArrayList存储学生对象,并提供添加、删除、修改、查询和显示所有学生的方法。
import java.util.ArrayList;
import java.util.Scanner;
public class GradeManager {
private ArrayList<Student> students = new ArrayList<>();
private Scanner scanner = new Scanner(System.in);
// 添加学生
public void addStudent() {
System.out.print("输入学号: ");
String id = scanner.nextLine();
System.out.print("输入姓名: ");
String name = scanner.nextLine();
System.out.print("输入成绩: ");
double score = Double.parseDouble(scanner.nextLine());
students.add(new Student(id, name, score));
System.out.println("学生添加成功!");
}
// 根据学号删除学生
public void removeStudent() {
System.out.print("输入要删除的学号: ");
String id = scanner.nextLine();
boolean removed = students.removeIf(student -> student.getId().equals(id));
if (removed) {
System.out.println("删除成功!");
} else {
System.out.println("未找到该学号的学生。");
}
}
// 修改学生信息
public void updateStudent() {
System.out.print("输入要修改的学号: ");
String id = scanner.nextLine();
for (Student s : students) {
if (s.getId().equals(id)) {
System.out.print("新姓名: ");
s.setName(scanner.nextLine());
System.out.print("新成绩: ");
s.setScore(Double.parseDouble(scanner.nextLine()));
System.out.println("信息更新成功!");
return;
}
}
System.out.println("未找到该学生。");
}
// 查询学生信息
public void findStudent() {
System.out.print("输入学号查询: ");
String id = scanner.nextLine();
for (Student s : students) {
if (s.getId().equals(id)) {
System.out.println(s);
return;
}
}
System.out.println("未找到该学生。");
}
// 显示所有学生
public void showAllStudents() {
if (students.isEmpty()) {
System.out.println("暂无学生信息。");
} else {
for (Student s : students) {
System.out.println(s);
}
}
}
// 主菜单
public void start() {
while (true) {
System.out.println("\n=== 简易成绩管理系统 ===");
System.out.println("1. 添加学生");
System.out.println("2. 删除学生");
System.out.println("3. 修改学生");
System.out.println("4. 查询学生");
System.out.println("5. 显示所有学生");
System.out.println("6. 退出");
System.out.print("请选择操作: ");
String choice = scanner.nextLine();
switch (choice) {
case "1" -> addStudent();
case "2" -> removeStudent();
case "3" -> updateStudent();
case "4" -> findStudent();
case "5" -> showAllStudents();
case "6" -> {
System.out.println("退出系统。");
return;
}
default -> System.out.println("无效选择,请重试。");
}
}
}
}
创建主类启动系统。
立即学习“Java免费学习笔记(深入)”;
public class Main {
public static void main(String[] args) {
GradeManager manager = new GradeManager();
manager.start();
}
}
当前系统基于控制台,数据不持久化。可考虑以下优化:
基本上就这些。这个系统适合初学者理解类、对象、集合和基本输入输出操作。结构清晰,易于理解和扩展。
以上就是在Java中如何开发简易成绩管理系统的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号