怎么用lambda简化下面代码

class ComplexComparator implements Comparator {
private final Comparator p1;
private final Comparator p2;
public ComplexComparator(Comparator p1, Comparator p2) {
this.p1 = p1;
this.p2=p2;
}

@Override
public int compare(Staff o1, Staff o2) {
    int res = firstComparator.compare(o1, o2);
    if (res == 0) {
        res= secondComparator.compare(o1, o2);
    }
    return res;
}

要使用lambda表达式简化这段代码,可以将其重写为一个lambda表达式作为Comparator接口的实例。可以使用Comparator的静态方法comparing和thenComparing来创建一个复合的比较器,它将首先使用firstComparator进行比较,如果结果为0,则使用secondComparator进行比较。
下面是使用lambda表达式简化后的代码:

Comparator<Staff> comparator = Comparator.comparing((Staff staff) -> firstComparator.compare(staff, staff2))
                                        .thenComparing((Staff staff) -> secondComparator.compare(staff, staff2));

然后,您可以将这个comparator应用于您的比较操作中:

@Override
public int compare(Staff o1, Staff o2) {
    return comparator.compare(o1, o2);
}