org.apache.commons.collections.comparators
Class ComparableComparator
java.lang.Object
|
+--org.apache.commons.collections.comparators.ComparableComparator
- All Implemented Interfaces:
- Comparator, Serializable
- public class ComparableComparator
- extends Object
- implements Comparator, Serializable
A Comparator
that compares
Comparable
objects.
This Comparator is useful, for example,
for enforcing the natural order in custom implementations
of SortedSet and SortedMap.
Note: In the 2.0 and 2.1 releases of Commons Collections,
this class would throw a ClassCastException
if
either of the arguments to compare
were null
, not Comparable
,
or for which compareTo
gave
inconsistent results. This is no longer the case. See
compare(java.lang.Object, java.lang.Object)
for details.
- Since:
- Commons Collections 2.0
- Version:
- $Revision: 1.13 $ $Date: 2004/01/14 21:43:18 $
- Author:
- Henri Yandell
- See Also:
Collections.reverseOrder()
, Serialized Form
ComparableComparator
public ComparableComparator()
getInstance
public static ComparableComparator getInstance()
- Return a shared instance of a ComparableComparator. Developers are
encouraged to use the comparator returned from this method instead of
constructing a new instance to reduce allocation and GC overhead when
multiple comparable comparators may be used in the same VM.
compare
public int compare(Object o1,
Object o2)
- Compare the two
Comparable
arguments.
This method is equivalent to:
((Comparable
)o1).compareTo
(o2)
- Specified by:
compare
in interface Comparator
- Throws:
NullPointerException
- when o1 is null
,
or when ((Comparable)o1).compareTo(o2)
doesClassCastException
- when o1 is not a Comparable
,
or when ((Comparable)o1).compareTo(o2)
does
hashCode
public int hashCode()
- Implement a hash code for this comparator that is consistent with
equals(java.lang.Object)
.
- Overrides:
hashCode
in class Object
- Returns:
- a hash code for this comparator.
- Since:
- Commons Collections 3.0
equals
public boolean equals(Object that)
- Returns
true
iff that Object is
is a Comparator
whose ordering is
known to be equivalent to mine.
This implementation returns true
iff that.getClass()
equals this.getClass()
. Subclasses may want to override
this behavior to remain consistent with the Comparator.equals(java.lang.Object)
contract.
- Specified by:
equals
in interface Comparator
- Overrides:
equals
in class Object
- Since:
- Commons Collections 3.0
Copyright © 2001-2004 Apache Software Foundation. All Rights Reserved.