我了解了Comparable接口(interface),为此类必须实现compareTo方法。我正在使用该方法的项目是:

public class EmployeeAssignmentTotal implements Comparable<EmployeeAssignmentTotal>, Serializable {

private Employee employee;
private int total;
....
public int compareTo(EmployeeAssignmentTotal other) {
    return new CompareToBuilder()
            .append(employee, other.employee)
            .append(total, other.total)
            .toComparison();
}
CompareToBuilder在这里做什么?以及它如何与employeetotal属性交互?

我确实读过the javadocs,但是我无法了解它们在构造函数和多个append中的作用。这个问题是否表示意图不明确和零研究?

最佳答案

此类旨在帮助您构建compareTo() -methods。想象一下,您的类中不仅有2个字段-手动编码比较方法可能会很麻烦。

CompareToBuilder会为您完成此操作-每个append()方法都会添加一个新的比较,并且所有比较都将&&进行编辑。

因此,您发布的代码在employee对象上运行equals(),在total上运行。

关于java - org.apache.commons.lang.builder.CompareToBuilder到底做什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9161370/

10-12 22:20
查看更多