设计Course类:处理课程信息,每门课都有一个名字以及选课的学生,要能够向从这个课程添加删除一个学生

mac2026-09-28  10

public class Course { private String coureName;//课程名 private String[] students = new String[5];//一个储存该课程学生名字的数组,假设每门课的人数最多为5 private int numberOfStudents;//选择该课的学生人数 public Course(String coureName) { this.coureName = coureName;//构造方法:传递一门课程的名称来创建一个Course对象 } public String getCoureName() { return coureName;//返回课程名 } public void addStudent(String student) {//使用addStudent方法向某门课程添加学生 if (numberOfStudents < students.length) { students[numberOfStudents] = student;//将选课学生名字储存在数组中 numberOfStudents++;//只要有新的学生加入课程,学生人数就+1 } else System.out.println("选课人数已满");//当选课学生达到5人时提示人数已满 } public void dropStudent(String student) {//使用dropStudent方法从某门课程中删除学生 String[] newStudent = new String[students.length];//创建一个与原数组大小一样的新数组 int index = 0; for (index = 0; index < 5; index++) { if (students[index] == null) index = 5; else if (students[index].equals(student)) break; } /* 找到要删除学生在原数组的下角标值index */ if (index < 5) { for (int i = 0; i < newStudent.length - 1; i++) { if (i < index) newStudent[i] = getStudents()[i];//将要删除学生之前的学生名字复制到新数组 else newStudent[i] = getStudents()[i + 1];//将要删除学生之后的学生名字复制到新数组 } students = newStudent;//将新数组的引用值赋值给原数组 numberOfStudents--;//选课学生人数-1 } else System.out.println("该生没选取这门课");//如果原数组中没找到要删除的学生姓名则提示该生没选这门课 } public String[] getStudents() {//返回储存学生名字的数组 return students; } public int getNumberOfStudents() {//返回选课学生人数 return numberOfStudents; } } public class Test { public static void main(String[] args) { Course course = new Course("Data Strectures"); course.addStudent("李华"); course.addStudent("张三"); course.addStudent("王五"); course.addStudent("赵四"); course.addStudent("孙丽"); course.addStudent("孙好"); course.dropStudent("赵四"); System.out.println("number of students in course is: " + course.getNumberOfStudents()); for (int i = 0; i < course.getNumberOfStudents(); i++) { System.out.print(course.getStudents()[i] + " "); } } }"D:\java 12.0\bin\java.exe" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2019.2\lib\idea_rt.jar=60920:C:\Program Files\JetBrains\IntelliJ IDEA 2019.2\bin" -Dfile.encoding=UTF-8 -classpath C:\Users\26601\Desktop\library_management_sys-master\untitled5\out\production\untitled5 Test 选课人数已满 number of students in course is: 4 李华 张三 王五 孙丽 Process finished with exit code 0
最新回复(0)