Comparator.comparing (…) eines verschachtelten Feldes
Angenommen, ich habe ein Domain-Modell wie dieses:
class Lecture {
Course course;
... // getters
}
class Course {
Teacher teacher;
int studentSize;
... // getters
}
class Teacher {
int age;
... // getters
}
Jetzt kann ich einen Lehrerkomparator wie folgt erstellen:
return Comparator
.comparing(Teacher::getAge);
Aber wie vergleiche ich Vorlesungen in verschachtelten Feldern?
return Comparator
.comparing(Lecture::getCourse::getTeacher:getAge)
.thenComparing(Lecture::getCourse::getStudentSize);
Ich kann keine Methode hinzufügenLecture.getTeacherAge()
auf dem Modell.