Создает Ordering[T], чья функция сравнения возвращает результат функции сравнения этого Ordering, если она не равна нулю, или результат other функции сравнения.
Параметры значения
other
Ordering, который используется, если этот Ordering возвращает ноль
Пример
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.
Пример
case class Pair(a: Int, b: Int)
val pairOrdering = Ordering.by[Pair, Int](_.a)
.orElseBy[Int](_.b)
Реализации, переопределяющие этот метод, ДОЛЖНЫ переопределять isReverseOf также, если они изменяют поведение (например, кэширование не требует переопределения).