我了解了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
在这里做什么?以及它如何与employee
和total
属性交互?我确实读过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/