Hey hab folgendes Problem:
Für den untenstehenden Code hab ich mir eine Testklasse geschrieben, und leider kommt bei der Methode getStudentsInStudgang nie etwas auf der Konsole und die Klasse getStudent liefert immer null zurück. Ich vermute, dass es an der contains-Methode liegt, da in der if-Abfrage wahrscheinlich immer false rauskommt. Ist das so, und wie kann ich es besser machen?
Für den untenstehenden Code hab ich mir eine Testklasse geschrieben, und leider kommt bei der Methode getStudentsInStudgang nie etwas auf der Konsole und die Klasse getStudent liefert immer null zurück. Ich vermute, dass es an der contains-Methode liegt, da in der if-Abfrage wahrscheinlich immer false rauskommt. Ist das so, und wie kann ich es besser machen?
Java:
package verwaltung;
import java.io.PrintStream;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
public class StudentVerwaltung implements IStudentVerwaltung {
List<IStudent> studentList = new ArrayList<IStudent>();
List<IStudent> list2 = new ArrayList<IStudent>();
@Override
public void printStudents() {
for (IStudent s1 : studentList) {
System.out.printf("%s %s %s %s", s1.getSurname(), s1.getName(),
s1.getSemester(), s1.getCourse());
System.out.println();
}
}
@Override
public List<IStudent> getStudentsInStudgang(String course) {
for (IStudent s1 : studentList) {
if (studentList.contains(course)) {
list2.add(s1);
System.out.printf("%s %s %s %s", s1.getSurname(), s1.getName(),
s1.getSemester(), s1.getCourse());
}
}
return list2;
}
@Override
public List<IStudent> getStudentsInSemester(int sem) {
// TODO Auto-generated method stub
return null;
}
@Override
public IStudent createStudent(String name, String surname, String course)
throws StudentAlreadyExistException {
if (studentList.contains(name) && studentList.contains(surname)) {
throw new StudentAlreadyExistException();
}
Student s = new Student(name, surname, 1, course);
studentList.add(s);
return s;
}
@Override
public IStudent getStudent(String name, String surname) {
for (IStudent s1 : studentList) {
if (studentList.contains(name) && studentList.contains(surname)) {
return s1;
}
}
return null;
}
}
Zuletzt bearbeitet von einem Moderator: