Me enteré de la interfaz Comparable
, para la cual una clase debe implementar el método compareTo
. Un proyecto en el que estoy usando ese método como:¿Qué hace exactamente 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();
}
Lo exacly qué CompareToBuilder
hacer aquí? ¿Y cómo está interactuando con los atributos employee
y total
?
leí the javadocs, pero no puedo hacer la cabeza o la cola de lo que están haciendo con el constructor y el múltiplo append
s. ¿Esta pregunta indica intenciones poco claras y cero investigación?
¿Es el Javadoc (http://commons.apache.org/lang/api-2.4/org/apache/commons/lang/builder/CompareToBuilder.html) poco claro de alguna manera? – skaffman
No está claro de muchas maneras. En particular, cómo se calcula el entero resultante o cómo la secuencia de anexos afecta el valor de retorno. –
Encontré esta publicación altamente informativa - http://www.codejava.net/java-core/collections/sorting-a-list-by-multiple-attributes-example – Shatu