Создает Ordering[T], функция сравнения которого возвращает результат функции сравнения этого Ordering, если она не равна нулю, в противном случае результат функции сравнения other.
Value parameters
other
Ordering для использования, если этот Ordering возвращает ноль
Example
case class Pair(a: Int, b: Int)
val pairOrdering = Ordering.by[Pair, Int](_.a)
.orElse(Ordering.by[Pair, Int](_.b))
Учитывая f, функцию из T в S, создает Ordering[T], функция сравнения которого возвращает результат функции сравнения этого Ordering, если она не равна нулю, в противном случае результат, эквивалентный:
Ordering[S].compare(f(x), f(y))
Эта функция эквивалентна передаче результата Ordering.by(f) в orElse.
Example
case class Pair(a: Int, b: Int)
val pairOrdering = Ordering.by[Pair, Int](_.a)
.orElseBy[Int](_.b)
Реализации, перезаписывающие этот метод, ДОЛЖНЫ также перезаписать isReverseOf, если они изменяют поведение (например, кэширование не требует перезаписи).