Java学生管理系统大作业代码解析
引言
Java学生管理系统是一种用于管理学生信息的应用程序。它可以存储学生的姓名、年龄、性别、成绩等信息,并提供增加、修改、删除和查询学生信息的功能。本文将通过代码示例详细解析Java学生管理系统的实现。
数据模型
在Java学生管理系统中,我们首先需要定义一个学生类来表示学生的信息。以下是学生类的代码示例:
public class Student {
private String name;
private int age;
private String gender;
private double score;
// 构造方法
public Student(String name, int age, String gender, double score) {
this.name = name;
this.age = age;
this.gender = gender;
this.score = score;
}
// getter和setter方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public double getScore() {
return score;
}
public void setScore(double score) {
this.score = score;
}
}
在学生类中,我们使用私有的成员变量来保存学生的姓名、年龄、性别和成绩,并为每个成员变量提供了对应的getter和setter方法。这样可以保证学生信息的封装性和安全性。
数据操作
接下来,我们需要一个学生管理类来对学生信息进行操作。以下是学生管理类的代码示例:
import java.util.ArrayList;
import java.util.List;
public class StudentManager {
private List<Student> students;
public StudentManager() {
students = new ArrayList<>();
}
public void addStudent(Student student) {
students.add(student);
}
public void removeStudent(Student student) {
students.remove(student);
}
public List<Student> getStudents() {
return students;
}
public Student findStudentByName(String name) {
for (Student student : students) {
if (student.getName().equals(name)) {
return student;
}
}
return null;
}
}
学生管理类使用一个列表来保存学生对象,并提供了添加、删除和查询学生的方法。在添加学生时,我们使用addStudent
方法将学生对象添加到列表中;在删除学生时,我们使用removeStudent
方法从列表中移除学生对象;在查询学生时,我们使用findStudentByName
方法根据姓名查找学生对象。
用户界面
最后,我们需要一个用户界面来与用户进行交互。以下是用户界面的代码示例:
import java.util.Scanner;
public class UserInterface {
private StudentManager studentManager;
private Scanner scanner;
public UserInterface() {
studentManager = new StudentManager();
scanner = new Scanner(System.in);
}
public void run() {
boolean running = true;
while (running) {
System.out.println("1. 添加学生");
System.out.println("2. 删除学生");
System.out.println("3. 查询学生");
System.out.println("4. 退出");
System.out.print("请选择操作:");
int choice = scanner.nextInt();
scanner.nextLine();
switch (choice) {
case 1:
addStudent();
break;
case 2:
removeStudent();
break;
case 3:
findStudent();
break;
case 4:
running = false;
break;
default:
System.out.println("无效的选择");
break;
}
}
}
private void addStudent() {
System.out.print("请输入学生姓名:");
String name = scanner.nextLine();
System.out.print("请输入学生年龄:");
int age = scanner.nextInt();
scanner.nextLine();
System.out.print("请输入学生性别:");
String gender = scanner.nextLine();
System.out.print("请输入学生成绩:");
double score = scanner.nextDouble();
scanner.nextLine();
Student student = new Student(name, age, gender, score);
studentManager.addStudent(student);
System.out.println("学生添加成功");
}
private void removeStudent() {
System.out.print("请输入学生姓名:");
String name = scanner.nextLine();
Student student = studentManager.findStudentByName(name);
if (student != null) {
studentManager.removeStudent(student);
System.out.println("学生删除成功");
} else {
System