FileDocCategorySizeDatePackage
Comparator.javaAPI DocAndroid 1.5 API3346Wed May 06 22:41:04 BST 2009java.util

Comparator

public interface Comparator
A {@code Comparator} is used to compare two objects to determine their ordering with respect to each other. On a given {@code Collection}, a {@code Comparator} can be used to obtain a sorted {@code Collection} which is totally ordered. For a {@code Comparator} to be consistent with equals, its {code #compare(Object, Object)} method has to return zero for each pair of elements (a,b) where a.equals(b) holds true. It is recommended that a {@code Comparator} implements {@link java.io.Serializable}.
since
Android 1.0

Fields Summary
Constructors Summary
Methods Summary
public intcompare(T object1, T object2)
Compares the two specified objects to determine their relative ordering. The ordering implied by the return value of this method for all possible pairs of {@code (object1, object2)} should form an equivalence relation. This means that
  • {@code compare(a,a)} returns zero for all {@code a}
  • the sign of {@code compare(a,b)} must be the opposite of the sign of {@code compare(b,a)} for all pairs of (a,b)
  • From {@code compare(a,b) > 0} and {@code compare(b,c) > 0} it must follow {@code compare(a,c) > 0} for all possible combinations of {@code (a,b,c)}

param
object1 an {@code Object}.
param
object2 a second {@code Object} to compare with {@code object1}.
return
an integer < 0 if {@code object1} is less than {@code object2}, 0 if they are equal, and > 0 if {@code object1} is greater than {@code object2}.
exception
ClassCastException when objects are not of the correct type.

public booleanequals(java.lang.Object object)
Compares this {@code Comparator} with the specified {@code Object} and indicates whether they are equal. In order to be equal, {@code object} must represent the same object as this instance using a class-specific comparison.

A {@code Comparator} never needs to override this method, but may choose so for performance reasons.

param
object the {@code Object} to compare with this comparator.
return
boolean {@code true} if specified {@code Object} is the same as this {@code Object}, and {@code false} otherwise.
see
Object#hashCode
see
Object#equals