Class AllEqualOrdering

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

    final class AllEqualOrdering
    extends Ordering<java.lang.Object>
    implements java.io.Serializable
    An ordering that treats all references as equals, even nulls.
    • Constructor Detail

      • AllEqualOrdering

        AllEqualOrdering()
    • Method Detail

      • compare

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

        public <E> java.util.List<E> sortedCopy​(java.lang.Iterable<E> iterable)
        Description copied from class: Ordering
        Returns a mutable list containing elements sorted by this ordering; use this only when the resulting list may need further modification, or may contain null. The input is not modified. The returned list is serializable and has random access.

        Unlike Sets.newTreeSet(Iterable), this method does not discard elements that are duplicates according to the comparator. The sort performed is stable, meaning that such elements will appear in the returned list in the same order they appeared in elements.

        Performance note: According to our benchmarking on Open JDK 7, Ordering.immutableSortedCopy(java.lang.Iterable<E>) generally performs better (in both time and space) than this method, and this method in turn generally performs better than copying the list and calling Collections.sort(List).

        Overrides:
        sortedCopy in class Ordering<java.lang.Object>
      • immutableSortedCopy

        public <E> ImmutableList<E> immutableSortedCopy​(java.lang.Iterable<E> iterable)
        Description copied from class: Ordering
        Returns an immutable list containing elements sorted by this ordering. The input is not modified.

        Unlike Sets.newTreeSet(Iterable), this method does not discard elements that are duplicates according to the comparator. The sort performed is stable, meaning that such elements will appear in the returned list in the same order they appeared in elements.

        Performance note: According to our benchmarking on Open JDK 7, this method is the most efficient way to make a sorted copy of a collection.

        Overrides:
        immutableSortedCopy in class Ordering<java.lang.Object>
      • reverse

        public <S> 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.Object>
      • readResolve

        private java.lang.Object readResolve()
      • toString

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