Class ReverseNaturalOrdering

  • All Implemented Interfaces:
    java.io.Serializable, java.util.Comparator<java.lang.Comparable>

    @GwtCompatible(serializable=true)
    final class ReverseNaturalOrdering
    extends Ordering<java.lang.Comparable>
    implements java.io.Serializable
    An ordering that uses the reverse of the natural order of the values.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int compare​(java.lang.Comparable left, java.lang.Comparable right)  
      <E extends java.lang.Comparable>
      E
      max​(E a, E b)
      Returns the greater of the two values according to this ordering.
      <E extends java.lang.Comparable>
      E
      max​(E a, E b, E c, E... rest)
      Returns the greatest of the specified values according to this ordering.
      <E extends java.lang.Comparable>
      E
      max​(java.lang.Iterable<E> iterable)
      Returns the greatest of the specified values according to this ordering.
      <E extends java.lang.Comparable>
      E
      max​(java.util.Iterator<E> iterator)
      Returns the greatest of the specified values according to this ordering.
      <E extends java.lang.Comparable>
      E
      min​(E a, E b)
      Returns the lesser of the two values according to this ordering.
      <E extends java.lang.Comparable>
      E
      min​(E a, E b, E c, E... rest)
      Returns the least of the specified values according to this ordering.
      <E extends java.lang.Comparable>
      E
      min​(java.lang.Iterable<E> iterable)
      Returns the least of the specified values according to this ordering.
      <E extends java.lang.Comparable>
      E
      min​(java.util.Iterator<E> iterator)
      Returns the least of the specified values according to this ordering.
      private java.lang.Object readResolve()  
      <S extends java.lang.Comparable>
      Ordering<S>
      reverse()
      Returns the reverse of this ordering; the Ordering equivalent to Collections.reverseOrder(Comparator).
      java.lang.String toString()  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface java.util.Comparator

        equals, reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
    • Constructor Detail

      • ReverseNaturalOrdering

        private ReverseNaturalOrdering()
    • Method Detail

      • compare

        public int compare​(java.lang.Comparable left,
                           java.lang.Comparable right)
        Specified by:
        compare in interface java.util.Comparator<java.lang.Comparable>
        Specified by:
        compare in class Ordering<java.lang.Comparable>
      • reverse

        public <S extends java.lang.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<java.lang.Comparable>
      • min

        public <E extends java.lang.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.

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

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

        public <E extends java.lang.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<java.lang.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 java.lang.Comparable> E min​(java.util.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: Continue to use this method for now. After the next release of Guava, 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<java.lang.Comparable>
        Parameters:
        iterator - the iterator whose minimum element is to be determined
      • min

        public <E extends java.lang.Comparable> E min​(java.lang.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, continue to use this method for now. After the next release of Guava, 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<java.lang.Comparable>
        Parameters:
        iterable - the iterable whose minimum element is to be determined
      • max

        public <E extends java.lang.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.

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

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

        public <E extends java.lang.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<java.lang.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 java.lang.Comparable> E max​(java.util.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: Continue to use this method for now. After the next release of Guava, 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<java.lang.Comparable>
        Parameters:
        iterator - the iterator whose maximum element is to be determined
      • max

        public <E extends java.lang.Comparable> E max​(java.lang.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, continue to use this method for now. After the next release of Guava, 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<java.lang.Comparable>
        Parameters:
        iterable - the iterable whose maximum element is to be determined
      • readResolve

        private java.lang.Object readResolve()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object