Ich soll einen Professor zum Ausbilder eines Kurses machen. Der Kommentar über der Methode gibt auch das Ziel an. Ich bin jedoch verwirrt, wenn ich darüber nachdenke. Ich bin neu in der Programmierung mit Java, also entschied ich mich zu überprüfen, ob der Professor im Kurs war, indem ich einen "instanceof" Vergleich machte. Gehe ich in die richtige Richtung oder habe ich etwas übersehen? Vielen Dank!Hinzufügen und Entfernen von Elementen
Nahe dem Ende I 2 andere Methoden hinzugefügt, die ich auf gerade kam, glaube ich, dass ich meine getStudents falsch umgesetzt. Die letzten beiden Methoden verlangen, dass ein Schüler hinzugefügt und entfernt wird. Ich bin mir nicht sicher, was das Schlüssel-Wert-Paar für den Schüler wäre.
public class Course implementiert Comparable {
/** * course id (unique) */ private int id; /** * course name */ private String name; /** * course level */ private int level; /** * professor teaching the course, null if none */ private String professor; /** * students enrolled in the course (unique), empty if none */ private HashSet<String> students; /** * Create a course. Initially there is no professor or student for the * course. * * @param id course id * @param name course name * @param level course level */ public Course(int id, String name, int level) { this.id = id; this.name = name; this.level = level; this.professor = null; this.students = new HashSet<>(); } /** * Get the course id. * * @return course id */ public int getId() { return id; } /** * Get the course name. * * @return course name */ public String getName() { return name; } /** * Get the course level. * * @return course level */ public int getLevel() { return level; } /** * Get the professor teaching the course. * * @return the professor, if none, null */ public String getProfessor() { return professor; } /** * Get the students enrolled in the course. * * @return the students, organized by ascending hash codes. if there are no * students enrolled the list should be empty. */ public Collection<String> getStudents() { return students; } /** * Make a professor the instructor of this course. If another professor was * teaching it, that information is lost. * * @param username the username of the professor */ public void addProfessor(String username) { }
} /**
- hinzufügen Schüler den Kurs, wenn sie nicht eingeschrieben sind,
- in konstanter Zeit. *
- @param Benutzername der Benutzername des Schülers
- @return, ob der Student hinzugefügt wurde oder nicht */ public boolean addStudent (String username) {// TODO return false; }
/**
- einen Schüler aus dem Kurs entfernen, wenn sie eingeschrieben sind,
- in konstanter Zeit. *
- @param Benutzername der Benutzername des Schülers
- @return wahr zu entfernen, wenn der Schüler entfernt wurde, falsch, wenn der Student nicht im Kurs ist */ public boolean removeStudent (String username) { // TODO Rückgabe false; }
Der Kommentar für die 'addProfessor' Methode sagt, dass der vorherige Professor würde durch den neuen Professor überschrieben werden, so haben Sie eigentlich zu überprüfen Sie, ob der Professor schon im Kurs war? – badjr
Sehen Sie sich für die Implementierung der Methoden zum Hinzufügen und Entfernen von Schülern die Methoden add und remove eines Set an. http://docs.oracle.com/javase/8/docs/api/java/util/Set.html –