Comparator.comparing (…) de um campo aninhado
Suponha que eu tenha um modelo de domínio como este:
class Lecture {
Course course;
... // getters
}
class Course {
Teacher teacher;
int studentSize;
... // getters
}
class Teacher {
int age;
... // getters
}
Agora eu posso criar um Comparador de Professores como este:
return Comparator
.comparing(Teacher::getAge);
Mas como eu comparo as palestras em campos aninhados, assim?
return Comparator
.comparing(Lecture::getCourse::getTeacher:getAge)
.thenComparing(Lecture::getCourse::getStudentSize);
Não consigo adicionar um métodoLecture.getTeacherAge()
no modelo.