Ho appreso l'interfaccia Comparable
, per la quale una classe deve implementare il metodo compareTo
. Un progetto che sto usando quel metodo come:Che cosa fa esattamente org.apache.commons.lang.builder.CompareToBuilder?
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();
}
Cosa exacly fa CompareToBuilder
fare qui? E come interagisce con gli attributi employee
e total
?
ho letto the javadocs, ma non posso fare testa o la coda di quello che stanno facendo con il costruttore e il multiplo append
s. Questa domanda indica intenzioni poco chiare e ricerca zero?
Il Javadoc (http://commons.apache.org/lang/api-2.4/org/apache/commons/lang/builder/CompareToBuilder.html) non è chiaro in qualche modo? – skaffman
Non è chiaro in molti modi. In particolare come il calcolo del numero intero risultante o il modo in cui la sequenza di appende influenza il valore di ritorno. –
Ho trovato questo post altamente informativo - http://www.codejava.net/java-core/collections/sorting-a-list-by-multiple-attributes-example – Shatu