Hallo,
mein Programm soll eine .csv einlesen:
Das angehängte UML-Diagramm beschreibt die Situaion. Dort steht ja auch compared by lastname, firstname und email. Das habe ich so gemacht:
Nun haben wir dafür einen vorgefertigten Test bekommen, der mir jetzt die folgende Fehlermeldung wirft:
team1 ==> expected: <[8, 2, 3, 1, 9] but was <[2, 3, 1, 8, 9]>
Die Methode vergleicht also richtig, sortiert aber nicht richtig, worauf es ja ankommt. Ich möchte richtig sortieren, da ich ein TreeSet von der Klasse Person implementiert habe, was ja auch aus dem UML hervorgeht.[/Code]
mein Programm soll eine .csv einlesen:
Java:
ID TEAM LASTNAME FIRSTNAME MAIL
3 team1 Cooper Alice [EMAIL]alcooper3@acme.edu[/EMAIL]
1 team1 Cooper Alicia [EMAIL]acooper@acme.edu[/EMAIL]
2 team1 Cooper Alice [EMAIL]alcooper2@acme.edu[/EMAIL]
8 team1 Brown Charlie [EMAIL]cbrown8@acme.edu[/EMAIL]
9 team1 Csesknik Freddie [EMAIL]fcseksnik9@acme.edu[/EMAIL]
4 team2 Doe John [EMAIL]jdoe4@acme.edu[/EMAIL]
5 team2 Cooper Alice [EMAIL]alcooper5@acme.edu[/EMAIL]
6 team2 Doe Albert [EMAIL]adoe6@acme.edu[/EMAIL]
7 team2 Zimbob Xavier [EMAIL]xzimbob7@acme.edu[/EMAIL]
Das angehängte UML-Diagramm beschreibt die Situaion. Dort steht ja auch compared by lastname, firstname und email. Das habe ich so gemacht:
Java:
@Override
public int compareTo(Person o) {
if (this.firstname.compareTo(o.getFirstname()) != 0) { // firstname, lastname, email
return this.firstname.compareTo(o.getFirstname());
}
if (this.lastname.compareTo(o.getLastname()) != 0) {// firstname, lastname, email
return this.lastname.compareTo(o.getLastname());
}
return this.email.compareTo(o.getEmail());
}
Nun haben wir dafür einen vorgefertigten Test bekommen, der mir jetzt die folgende Fehlermeldung wirft:
team1 ==> expected: <[8, 2, 3, 1, 9] but was <[2, 3, 1, 8, 9]>
Die Methode vergleicht also richtig, sortiert aber nicht richtig, worauf es ja ankommt. Ich möchte richtig sortieren, da ich ein TreeSet von der Klasse Person implementiert habe, was ja auch aus dem UML hervorgeht.[/Code]