64 lines
1.9 KiB
Java
64 lines
1.9 KiB
Java
package CourseRegistrationStarter;
|
|
import java.util.ArrayList;
|
|
|
|
public class Student {
|
|
private String name;
|
|
private String studentId;
|
|
private ArrayList<Course> registeredCourses;
|
|
|
|
public Student(String name, String studentId) {
|
|
this.name = name;
|
|
this.studentId = studentId;
|
|
this.registeredCourses = new ArrayList<>();
|
|
}
|
|
|
|
public String getName() {
|
|
return name;
|
|
}
|
|
|
|
public String getStudentId() {
|
|
return studentId;
|
|
}
|
|
|
|
public boolean addCourse(Course c) {
|
|
if (registeredCourses.contains(c)){
|
|
System.out.println("You have already registered in this course!"+"\n");
|
|
return (false);
|
|
} else if (registeredCourses.size()== 2){
|
|
System.out.println("You have reached the maximum number of allowed courses!"+"\n");
|
|
return (false);
|
|
}
|
|
else if (c.getCapacity()>0){
|
|
registeredCourses.add(c);
|
|
c.reduceCapacity();
|
|
return (true);
|
|
}else{
|
|
System.out.println("Registration was not successful!"+"\n"+"This course has no capacity left."+"\n");
|
|
return (false);
|
|
}
|
|
}
|
|
|
|
public boolean dropCourse(Course c) {
|
|
if (registeredCourses.contains(c)){
|
|
registeredCourses.remove(c);
|
|
c.increaseCapacity();
|
|
return (true);
|
|
}else{
|
|
System.out.println("Course drop failed!"+"\n"+"You are not registered for this course."+"\n");
|
|
return (false);
|
|
}
|
|
|
|
}
|
|
|
|
public void showRegisteredCourses() {
|
|
if(registeredCourses.size()==0){
|
|
System.out.println(Main.st.getName() + "hasn't registered for any course."+"\n");
|
|
|
|
}
|
|
else {
|
|
for (int i = 0; i <= registeredCourses.size() - 1; i++) {
|
|
System.out.println(registeredCourses.get(i).getCourseName() + "(" + registeredCourses.get(i).getCourseCode() + ")" + "\n");
|
|
}
|
|
}
|
|
}
|
|
} |