Files
WS-02-intro-to-oop/src/CourseRegistrationStarter/Student.java
T

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");
}
}
}
}