57 lines
1.6 KiB
Java
57 lines
1.6 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("Studend registered in this corse!");
|
|
return false;
|
|
}
|
|
if(c.reduceCapacity()){
|
|
registeredCourses.add(c);
|
|
System.out.println("corse added:" + c.getCourseName());
|
|
return true;
|
|
}
|
|
System.out.println("corse is full");
|
|
return false;
|
|
}
|
|
|
|
public boolean dropCourse(Course c) {
|
|
if(registeredCourses.remove(c)){
|
|
c.increaseCapacity();
|
|
System.out.println("corse dropped :" + c.getCourseName());
|
|
return true;
|
|
}
|
|
System.out.println("studend is not registered in this corse!");
|
|
return false;
|
|
}
|
|
|
|
public void showRegisteredCourses() {
|
|
System.out.println("registered corses for " + name + ":");
|
|
if(registeredCourses.isEmpty()){
|
|
System.out.println("no corses registered");
|
|
return;
|
|
}
|
|
for(Course c : registeredCourses){
|
|
System.out.println("- " + c.getCourseName() + "/" + c.getCourseCode());
|
|
}
|
|
}
|
|
} |