Java 8 比较器 keyExtractor

Hal*_*ley 1 java comparator java-8

在Java 8 Comparator中,我们可以如下创建一个比较器。

Comparator.comparing(keyExtractor);
Run Code Online (Sandbox Code Playgroud)

目前我有一堂课如下

class Employee {
    String name;
    Department dept;
}

class Department {
    String departmentName;
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我想为 Employee 类创建一个比较器,根据部门名称对记录进行排序,我该如何编写我的密钥提取器?

尝试了下面的代码,但没有成功。

Comparator.comparing(Employee::getDept::getDepartmentName);
Run Code Online (Sandbox Code Playgroud)

Vic*_*bin 5

您可以使用提取排序键的函数

IE

Comparator.comparing(Employee::getDept,Comparator.comparing(Department::departmentName));
Run Code Online (Sandbox Code Playgroud)