请使用Java设计一个简易的学生宿舍管理系统
时间: 2024-02-25 08:52:11 浏览: 20
好的,我来为您设计一个简易的学生宿舍管理系统。
首先,我们需要定义一些关键词和数据结构:
- 学生:包含学生ID、姓名、性别、入住时间、宿舍号等信息。
- 宿舍:包含宿舍号、宿舍类型、宿舍楼层、剩余床位数等信息。
我们可以使用面向对象的方式来设计这个系统。首先,我们需要定义学生和宿舍两个类:
```java
public class Student {
private int id; // 学生ID
private String name; // 姓名
private String gender; // 性别
private Date checkInTime; // 入住时间
private int dormitoryNumber; // 宿舍号
// 构造函数
public Student(int id, String name, String gender, Date checkInTime, int dormitoryNumber) {
this.id = id;
this.name = name;
this.gender = gender;
this.checkInTime = checkInTime;
this.dormitoryNumber = dormitoryNumber;
}
// getter和setter方法
// ...
}
public class Dormitory {
private int dormitoryNumber; // 宿舍号
private String dormitoryType; // 宿舍类型
private int floor; // 宿舍楼层
private int remainingBeds; // 剩余床位数
// 构造函数
public Dormitory(int dormitoryNumber, String dormitoryType, int floor, int remainingBeds) {
this.dormitoryNumber = dormitoryNumber;
this.dormitoryType = dormitoryType;
this.floor = floor;
this.remainingBeds = remainingBeds;
}
// getter和setter方法
// ...
}
```
接下来,我们需要定义一个管理系统类,该类可以添加、删除、查询和修改学生和宿舍信息:
```java
import java.util.ArrayList;
public class DormitoryManagementSystem {
private ArrayList<Student> students; // 学生列表
private ArrayList<Dormitory> dormitories; // 宿舍列表
// 构造函数
public DormitoryManagementSystem() {
students = new ArrayList<Student>();
dormitories = new ArrayList<Dormitory>();
}
// 添加学生
public void addStudent(Student student) {
students.add(student);
// 更新宿舍剩余床位数
for (Dormitory dormitory : dormitories) {
if (dormitory.getDormitoryNumber() == student.getDormitoryNumber()) {
dormitory.setRemainingBeds(dormitory.getRemainingBeds() - 1);
break;
}
}
}
// 删除学生
public void removeStudent(int id) {
// 查找学生
int index = -1;
for (int i = 0; i < students.size(); i++) {
if (students.get(i).getId() == id) {
index = i;
break;
}
}
if (index != -1) {
students.remove(index);
// 更新宿舍剩余床位数
for (Dormitory dormitory : dormitories) {
if (dormitory.getDormitoryNumber() == students.get(index).getDormitoryNumber()) {
dormitory.setRemainingBeds(dormitory.getRemainingBeds() + 1);
break;
}
}
}
}
// 查询学生
public Student getStudent(int id) {
// 查找学生
for (Student student : students) {
if (student.getId() == id) {
return student;
}
}
return null;
}
// 修改学生
public void updateStudent(int id, Student newStudent) {
// 查找学生
int index = -1;
for (int i = 0; i < students.size(); i++) {
if (students.get(i).getId() == id) {
index = i;
break;
}
}
if (index != -1) {
students.set(index, newStudent);
}
}
// 添加宿舍
public void addDormitory(Dormitory dormitory) {
dormitories.add(dormitory);
}
// 删除宿舍
public void removeDormitory(int dormitoryNumber) {
// 查找宿舍
int index = -1;
for (int i = 0; i < dormitories.size(); i++) {
if (dormitories.get(i).getDormitoryNumber() == dormitoryNumber) {
index = i;
break;
}
}
if (index != -1) {
dormitories.remove(index);
}
}
// 查询宿舍
public Dormitory getDormitory(int dormitoryNumber) {
// 查找宿舍
for (Dormitory dormitory : dormitories) {
if (dormitory.getDormitoryNumber() == dormitoryNumber) {
return dormitory;
}
}
return null;
}
// 修改宿舍
public void updateDormitory(int dormitoryNumber, Dormitory newDormitory) {
// 查找宿舍
int index = -1;
for (int i = 0; i < dormitories.size(); i++) {
if (dormitories.get(i).getDormitoryNumber() == dormitoryNumber) {
index = i;
break;
}
}
if (index != -1) {
dormitories.set(index, newDormitory);
}
}
}
```
以上是一个简易的学生宿舍管理系统的设计,您可以根据需求进行扩展和修改。