android/guava/src/com/google/common/collect/Ordering.java
@GwtCompatible(serializable = true)
  public <U extends T> Ordering<U> compound(Comparator<? super U> secondaryComparator) {
    return new CompoundOrdering<U>(this, checkNotNull(secondaryComparator));
  }
@GwtCompatible(serializable = true)
  public <U extends T> Ordering<U> compound(Comparator<? super U> secondaryComparator) {
    return new CompoundOrdering<U>(this, checkNotNull(secondaryComparator));
  }
Returns an ordering which first uses the ordering {@code this}, but which in the event of a
"tie", then delegates to {@code secondaryComparator}. For example, to sort a bug list first by
status and second by priority, you might use {@code byStatus.compound(byPriority)}. For a
compound ordering with three or more components, simply chain multiple calls to this method.

<p>An ordering produced by this method, or a chain of calls to this method, is equivalent to
one created using {@link Ordering#compound(Iterable)} on the same component comparators.

<p><b>Java 8 users:</b> Use {@code thisComparator.thenComparing(secondaryComparator)} instead.
Depending on what {@code secondaryComparator} is, one of the other overloads of {@code
thenComparing} may be even more useful.