## org.apache.commons.collections.comparators
Class ReverseComparator

    java.lang.Object
      org.apache.commons.collections.comparators.ReverseComparator

All Implemented Interfaces:
  java.io.Serializable, java.util.Comparator

    public class ReverseComparator

extends java.lang.Object
implements java.util.Comparator, java.io.Serializable

Reverses the order of another comparator by reversing the arguments to its `compare` method.

Since:
  Commons Collections 2.0
Version:
  $Revision: 646777 $ $Date: 2008-04-10 13:33:15 +0100 (Thu, 10 Apr 2008) $
Author:
  Henri Yandell, Michael A. Smith
See Also:
  `Collections.reverseOrder()`, Serialized Form

Constructor Summary
`ReverseComparator()` Creates a comparator that compares objects based on the inverse of their natural ordering.
`ReverseComparator(java.util.Comparator comparator)` Creates a comparator that inverts the comparison of the given comparator.

Method Summary
`int` `compare(java.lang.Object obj1, java.lang.Object obj2)` Compares two objects in reverse order.
`boolean` `equals(java.lang.Object object)` Returns `true` iff that Object is is a `Comparator` whose ordering is known to be equivalent to mine.
`int` `hashCode()` Implement a hash code for this comparator that is consistent with `equals`.

Methods inherited from class java.lang.Object
`clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### ReverseComparator

    public ReverseComparator()

  Creates a comparator that compares objects based on the inverse of their natural ordering. Using this Constructor will create a ReverseComparator that is functionally identical to the Comparator returned by java.util.Collections.reverseOrder().

  See Also:
    `Collections.reverseOrder()`

### ReverseComparator

    public ReverseComparator(java.util.Comparator comparator)

  Creates a comparator that inverts the comparison of the given comparator. If you pass in `null`, the ReverseComparator defaults to reversing the natural order, as per `Collections.reverseOrder()`.

  Parameters:
    `comparator` - Comparator to reverse

Method Detail

### compare

    public int compare(java.lang.Object obj1,
                       java.lang.Object obj2)

  Compares two objects in reverse order.

  Specified by:
    `compare` in interface `java.util.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

### hashCode

    public int hashCode()

  Implement a hash code for this comparator that is consistent with `equals`.

  Overrides:
    `hashCode` in class `java.lang.Object`
  Returns:
    a suitable hash code
  Since:
    Commons Collections 3.0

### equals

    public boolean equals(java.lang.Object object)

  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()`, and the underlying comparators are equal. Subclasses may want to override this behavior to remain consistent with the `equals` contract.

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

Copyright © 2001-2008 The Apache Software Foundation. All Rights Reserved.