用java写一个在eclipse控制台运行的宿舍管理系统
时间: 2023-12-31 12:05:07 浏览: 83
Console图书管理系统框架 eclipse + java + console + 无数据库
好的,我可以帮你提供大致的思路和代码结构。
首先,我们需要定义宿舍类和学生类,宿舍类包含宿舍号、宿舍类型、床位数等属性,学生类包含学生姓名、学号、所在宿舍等属性。
```
public class Dormitory {
private String dormitoryNum; // 宿舍号
private String dormitoryType; // 宿舍类型
private int bedNum; // 床位数
// 构造方法、getter和setter方法
}
public class Student {
private String name; // 姓名
private String id; // 学号
private Dormitory dormitory; // 所在宿舍
// 构造方法、getter和setter方法
}
```
接着,我们需要定义一个宿舍管理系统类,用于实现宿舍和学生的增删改查操作。可以包含以下方法:
1. 添加宿舍:输入宿舍号、宿舍类型、床位数,创建宿舍对象并添加到宿舍列表中。
2. 删除宿舍:输入宿舍号,查找宿舍列表中对应的宿舍对象并删除。
3. 添加学生:输入学生姓名、学号、所在宿舍号,创建学生对象并添加到学生列表中,同时将学生对象添加到对应宿舍的学生列表中。
4. 删除学生:输入学生学号,查找学生列表中对应的学生对象并删除,同时将学生从对应宿舍的学生列表中删除。
5. 查询宿舍信息:输入宿舍号,查找对应宿舍对象并输出宿舍信息,包括宿舍号、宿舍类型、床位数和当前入住学生列表。
6. 查询学生信息:输入学生学号,查找对应学生对象并输出学生信息,包括姓名、学号、所在宿舍信息。
```
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class DormitoryManagementSystem {
private List<Dormitory> dormitoryList; // 宿舍列表
private List<Student> studentList; // 学生列表
public DormitoryManagementSystem() {
dormitoryList = new ArrayList<>();
studentList = new ArrayList<>();
}
public void addDormitory() {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入宿舍号:");
String dormitoryNum = scanner.next();
System.out.print("请输入宿舍类型:");
String dormitoryType = scanner.next();
System.out.print("请输入床位数:");
int bedNum = scanner.nextInt();
Dormitory dormitory = new Dormitory(dormitoryNum, dormitoryType, bedNum);
dormitoryList.add(dormitory);
System.out.println("添加宿舍成功!");
}
public void deleteDormitory() {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入宿舍号:");
String dormitoryNum = scanner.next();
for(Dormitory dormitory : dormitoryList) {
if(dormitory.getDormitoryNum().equals(dormitoryNum)) {
dormitoryList.remove(dormitory);
System.out.println("删除宿舍成功!");
return;
}
}
System.out.println("找不到对应宿舍!");
}
public void addStudent() {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入学生姓名:");
String name = scanner.next();
System.out.print("请输入学生学号:");
String id = scanner.next();
System.out.print("请输入所在宿舍号:");
String dormitoryNum = scanner.next();
Dormitory dormitory = null;
for(Dormitory d : dormitoryList) {
if(d.getDormitoryNum().equals(dormitoryNum)) {
dormitory = d;
break;
}
}
if(dormitory == null) {
System.out.println("找不到对应宿舍!");
return;
}
Student student = new Student(name, id, dormitory);
studentList.add(student);
dormitory.addStudent(student);
System.out.println("添加学生成功!");
}
public void deleteStudent() {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入学生学号:");
String id = scanner.next();
for(Student student : studentList) {
if(student.getId().equals(id)) {
studentList.remove(student);
student.getDormitory().removeStudent(student);
System.out.println("删除学生成功!");
return;
}
}
System.out.println("找不到对应学生!");
}
public void queryDormitory() {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入宿舍号:");
String dormitoryNum = scanner.next();
for(Dormitory dormitory : dormitoryList) {
if(dormitory.getDormitoryNum().equals(dormitoryNum)) {
System.out.println("宿舍号:" + dormitory.getDormitoryNum());
System.out.println("宿舍类型:" + dormitory.getDormitoryType());
System.out.println("床位数:" + dormitory.getBedNum());
System.out.println("入住学生:");
for(Student student : dormitory.getStudentList()) {
System.out.println("姓名:" + student.getName() + " 学号:" + student.getId());
}
return;
}
}
System.out.println("找不到对应宿舍!");
}
public void queryStudent() {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入学生学号:");
String id = scanner.next();
for(Student student : studentList) {
if(student.getId().equals(id)) {
System.out.println("姓名:" + student.getName());
System.out.println("学号:" + student.getId());
System.out.println("所在宿舍号:" + student.getDormitory().getDormitoryNum());
System.out.println("所在宿舍类型:" + student.getDormitory().getDormitoryType());
System.out.println("所在宿舍床位数:" + student.getDormitory().getBedNum());
return;
}
}
System.out.println("找不到对应学生!");
}
}
```
最后,我们可以在主方法中调用宿舍管理系统类的方法,实现控制台运行的宿舍管理系统。
```
public static void main(String[] args) {
DormitoryManagementSystem system = new DormitoryManagementSystem();
Scanner scanner = new Scanner(System.in);
while(true) {
System.out.println("请选择操作:");
System.out.println("1. 添加宿舍");
System.out.println("2. 删除宿舍");
System.out.println("3. 添加学生");
System.out.println("4. 删除学生");
System.out.println("5. 查询宿舍信息");
System.out.println("6. 查询学生信息");
int choice = scanner.nextInt();
switch(choice) {
case 1:
system.addDormitory();
break;
case 2:
system.deleteDormitory();
break;
case 3:
system.addStudent();
break;
case 4:
system.deleteStudent();
break;
case 5:
system.queryDormitory();
break;
case 6:
system.queryStudent();
break;
default:
System.out.println("请输入正确的选项!");
}
}
}
```
阅读全文