package CourseRegistrationStarter; import java.util.ArrayList; public class Student { private final String name; private final String studentId; private ArrayList registeredCourses; private int courseLimit; public Student(String name, String studentId, int courseLimit) { this.name = name; this.studentId = studentId; this.registeredCourses = new ArrayList<>(); this.courseLimit = courseLimit; } public String getName() { return name; } public String getStudentId() { return studentId; } public boolean addCourse(Course c) { if(c.getCapacity() > 0 && registeredCourses.size() < courseLimit) { registeredCourses.add(c); c.reduceCapacity(); return true; } return false; } public void setCourseLimit(int amount) { if(amount>0) courseLimit = amount; } public boolean dropCourse(Course c) { if (registeredCourses.remove(c)) { c.increaseCapacity(); return true; } return false; } public void showRegisteredCourses() { for(int i=0 ; i < registeredCourses.size() ; i++) { System.out.print("Course"); System.out.print(i+1); System.out.print(" : " + registeredCourses.get(i).getCourseName() + " " + registeredCourses.get(i).getCourseCode()); System.out.println(", capacity : " +registeredCourses.get(i).getCapacity()); } } }