Class ReverseNaturalOrdering

java.lang.Object
com.google.common.collect.Ordering<Comparable<?>>
com.google.common.collect.ReverseNaturalOrdering
All Implemented Interfaces:
Serializable, Comparator<Comparable<?>>

final class ReverseNaturalOrdering extends Ordering<Comparable<?>> implements Serializable
An ordering that uses the reverse of the natural order of the values.
  • Field Details

  • Constructor Details

    • ReverseNaturalOrdering

      private ReverseNaturalOrdering()
  • Method Details

    • compare

      public int compare(Comparable<?> left, Comparable<?> right)
      Specified by:
      compare in interface Comparator<Comparable<?>>
      Specified by:
      compare in class Ordering<Comparable<?>>
    • reverse

      public <S extends Comparable<?>> Ordering<S> reverse()
      Description copied from class: Ordering
      Returns the reverse of this ordering; the Ordering equivalent to Collections.reverseOrder(Comparator).

      Java 8+ users: Use thisComparator.reversed() instead.

      Overrides:
      reverse in class Ordering<Comparable<?>>
    • min

      public <E extends Comparable<?>> E min(E a, E b)
      Description copied from class: Ordering
      Returns the lesser of the two values according to this ordering. If the values compare as 0, the first is returned.

      Implementation note: this method is invoked by the default implementations of the other min overloads, so overriding it will affect their behavior.

      Note: Consider using Comparators.min(a, b, thisComparator) instead. If thisComparator is Ordering.natural(), then use Comparators.min(a, b).

      Overrides:
      min in class Ordering<Comparable<?>>
      Parameters:
      a - value to compare, returned if less than or equal to b.
      b - value to compare.
    • min

      public <E extends Comparable<?>> E min(E a, E b, E c, E... rest)
      Description copied from class: Ordering
      Returns the least of the specified values according to this ordering. If there are multiple least values, the first of those is returned.

      Java 8+ users: Use Collections.min(Arrays.asList(a, b, c...), thisComparator) instead (but note that it does not guarantee which tied minimum element is returned).

      Overrides:
      min in class Ordering<Comparable<?>>
      Parameters:
      a - value to compare, returned if less than or equal to the rest.
      b - value to compare
      c - value to compare
      rest - values to compare
    • min

      public <E extends Comparable<?>> E min(Iterator<E> iterator)
      Description copied from class: Ordering
      Returns the least of the specified values according to this ordering. If there are multiple least values, the first of those is returned. The iterator will be left exhausted: its hasNext() method will return false.

      Java 8+ users: Use Streams.stream(iterator).min(thisComparator).get() instead (but note that it does not guarantee which tied minimum element is returned).

      Overrides:
      min in class Ordering<Comparable<?>>
      Parameters:
      iterator - the iterator whose minimum element is to be determined
    • min

      public <E extends Comparable<?>> E min(Iterable<E> iterable)
      Description copied from class: Ordering
      Returns the least of the specified values according to this ordering. If there are multiple least values, the first of those is returned.

      Java 8+ users: If iterable is a Collection, use Collections.min(collection, thisComparator) instead. Otherwise, use Streams.stream(iterable).min(thisComparator).get() instead. Note that these alternatives do not guarantee which tied minimum element is returned.

      Overrides:
      min in class Ordering<Comparable<?>>
      Parameters:
      iterable - the iterable whose minimum element is to be determined
    • max

      public <E extends Comparable<?>> E max(E a, E b)
      Description copied from class: Ordering
      Returns the greater of the two values according to this ordering. If the values compare as 0, the first is returned.

      Implementation note: this method is invoked by the default implementations of the other max overloads, so overriding it will affect their behavior.

      Note: Consider using Comparators.max(a, b, thisComparator) instead. If thisComparator is Ordering.natural(), then use Comparators.max(a, b).

      Overrides:
      max in class Ordering<Comparable<?>>
      Parameters:
      a - value to compare, returned if greater than or equal to b.
      b - value to compare.
    • max

      public <E extends Comparable<?>> E max(E a, E b, E c, E... rest)
      Description copied from class: Ordering
      Returns the greatest of the specified values according to this ordering. If there are multiple greatest values, the first of those is returned.

      Java 8+ users: Use Collections.max(Arrays.asList(a, b, c...), thisComparator) instead (but note that it does not guarantee which tied maximum element is returned).

      Overrides:
      max in class Ordering<Comparable<?>>
      Parameters:
      a - value to compare, returned if greater than or equal to the rest.
      b - value to compare
      c - value to compare
      rest - values to compare
    • max

      public <E extends Comparable<?>> E max(Iterator<E> iterator)
      Description copied from class: Ordering
      Returns the greatest of the specified values according to this ordering. If there are multiple greatest values, the first of those is returned. The iterator will be left exhausted: its hasNext() method will return false.

      Java 8+ users: Use Streams.stream(iterator).max(thisComparator).get() instead (but note that it does not guarantee which tied maximum element is returned).

      Overrides:
      max in class Ordering<Comparable<?>>
      Parameters:
      iterator - the iterator whose maximum element is to be determined
    • max

      public <E extends Comparable<?>> E max(Iterable<E> iterable)
      Description copied from class: Ordering
      Returns the greatest of the specified values according to this ordering. If there are multiple greatest values, the first of those is returned.

      Java 8+ users: If iterable is a Collection, use Collections.max(collection, thisComparator) instead. Otherwise, use Streams.stream(iterable).max(thisComparator).get() instead. Note that these alternatives do not guarantee which tied maximum element is returned.

      Overrides:
      max in class Ordering<Comparable<?>>
      Parameters:
      iterable - the iterable whose maximum element is to be determined
    • readResolve

      private Object readResolve()
    • toString

      public String toString()
      Overrides:
      toString in class Object