Class ComparableComparator

java.lang.Object
org.apache.commons.collections.comparators.ComparableComparator
All Implemented Interfaces:
Serializable, Comparator

@Deprecated(since="2021-04-30") public class ComparableComparator extends Object implements Comparator, Serializable
Deprecated.
Apache Commons Collections version 3.x is being deprecated from AEMaaCS. The upgraded version 4.4 of Commons Collections is already included as replacement. Customers are advised to upgrade to this version of the library. Please note: the package name was changed to org.apache.commons.collections4. Further note that there are AEM APIs currently exposing the old collections classes; these will be updated in upcoming releases.
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 for details.

Since:
Commons Collections 2.0
See Also:
  • Constructor Details

    • ComparableComparator

      public ComparableComparator()
      Deprecated.
      Constructor whose use should be avoided.

      Please use the getInstance() method whenever possible.

  • Method Details

    • getInstance

      public static ComparableComparator getInstance()
      Deprecated.
      Gets the singleton 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.

      Returns:
      the singleton ComparableComparator
    • compare

      public int compare(Object obj1, Object obj2)
      Deprecated.
      Compare the two Comparable arguments. This method is equivalent to:
      ((Comparable)obj1).compareTo(obj2)
      Specified by:
      compare in interface Comparator
      Parameters:
      obj1 - the first object to compare
      obj2 - the second object to compare
      Returns:
      negative if obj1 is less, positive if greater, zero if equal
      Throws:
      NullPointerException - when obj1 is null, or when ((Comparable)obj1).compareTo(obj2) does
      ClassCastException - when obj1 is not a Comparable, or when ((Comparable)obj1).compareTo(obj2) does
    • hashCode

      public int hashCode()
      Deprecated.
      Implement a hash code for this comparator that is consistent with equals.
      Overrides:
      hashCode in class Object
      Returns:
      a hash code for this comparator.
      Since:
      Commons Collections 3.0
    • equals

      public boolean equals(Object object)
      Deprecated.
      Returns true iff that Object is is a Comparator whose ordering is known to be equivalent to mine.

      This implementation returns true iff object.getClass() equals this.getClass(). Subclasses may want to override this behavior to remain consistent with the Comparator.equals(Object) contract.

      Specified by:
      equals in interface Comparator
      Overrides:
      equals in class Object
      Parameters:
      object - the object to compare with
      Returns:
      true if equal
      Since:
      Commons Collections 3.0