Spec-Zone.ru › Scala 3.1

Трейт scala.math.BigDecimalOrdering

Исходный код

трейт BigDecimalOrdering extends Ordering[BigDecimal]

Суператрибуты
трейт Ordering[BigDecimal]
трейт PartialOrdering[BigDecimal]
трейт Equiv[BigDecimal]
трейт Serializable
трейт Comparator[BigDecimal]
класс Object
трейт Matchable
класс Any
Известные подтипы
объект BigDecimalAsIfIntegral.type
объект BigDecimalIsFractional.type
объект BigDecimal.type

Наследуемые классы

Исходный код
класс OrderingOps(lhs: T)

Этот вложенный класс определяет операторы сравнения, доступные для T.

Он не может расширять AnyVal , так как это не верхнеуровневый класс или член статически доступного объекта.

Наследован от Ordering

Конкретные методы

Исходный код
def compare(x: BigDecimal, y: BigDecimal): Int

Наследованные методы

Исходный код
override def equiv(x: BigDecimal, y: BigDecimal): Boolean

Возвращает true, если x равно y в порядке сортировки.

Классы-определения Ordering -> PartialOrdering -> Equiv
Наследован от Ordering

Исходный код
override def gt(x: BigDecimal, y: BigDecimal): Boolean

Возвращает true, если x > y в порядке сортировки.

Классы-определения Ordering -> PartialOrdering
Наследован от Ordering

Исходный код
override def gteq(x: BigDecimal, y: BigDecimal): Boolean

Возвращает true, если x >= y в порядке сортировки.

Классы-определения Ordering -> PartialOrdering
Наследован от Ordering

Исходный код
def isReverseOf(other: Ordering[_]): Boolean

Возвращает true, если другой порядок является обратным порядком для этого.

Эквивалентно other == this.reverse.

Реализации должны переопределять этот метод только в том случае, если они переопределяют reverse тоже.

Наследован от Ordering

Исходный код
override def lt(x: BigDecimal, y: BigDecimal): Boolean

Возвращает true, если x меньше y в порядке сортировки.

Классы-определения Ordering -> PartialOrdering
Унаследовано от Ordering

Источник
override def lteq(x: BigDecimal, y: BigDecimal): Boolean

Возвращает true, если x меньше или равно y в порядке сортировки.

Классы-определения Ordering -> PartialOrdering
Унаследовано от Ordering

Источник
def max[U <: BigDecimal](x: U, y: U): U

Возвращает x, если x больше или равно y, иначе y.

Унаследовано от Ordering

Источник
def min[U <: BigDecimal](x: U, y: U): U

Возвращает x, если x меньше или равно y, иначе y.

Унаследовано от Ordering

Источник
def on[U](f: U => BigDecimal): Ordering[U]

Принимая функцию f, преобразующую U в T, создаёт Ordering[U], функция сравнения которого эквивалентна:

def compare(x:U, y:U) = Ordering[T].compare(f(x), f(y))
Унаследовано от Ordering

Источник
def orElse(other: Ordering[BigDecimal]): Ordering[BigDecimal]

Создаёт 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))
Унаследовано от Ordering

Источник
def orElseBy[S](f: BigDecimal => S)(implicit ord: Ordering[S]): Ordering[BigDecimal]

Принимая функцию 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)
Унаследовано от Ordering

Источник
override def reverse: Ordering[BigDecimal]

Возвращает обратный порядок текущего.

Реализации, переопределяющие этот метод, ДОЛЖНЫ также переопределить isReverseOf, если они меняют поведение (например, кэширование не требует его переопределения).

Классы-определения Ordering -> PartialOrdering
Унаследовано от Ordering

def reversed(): Comparator[BigDecimal]

Унаследовано от Comparator

def thenComparing[U <: Comparable[_ >: U <: <FromJavaObject>]](x$0: Function[_ >: BigDecimal <: <FromJavaObject>, _ <: U]): Comparator[BigDecimal]

Унаследовано от Comparator

def thenComparing[U <: <FromJavaObject>](x$0: Function[_ >: BigDecimal <: <FromJavaObject>, _ <: U], x$1: Comparator[_ >: U <: <FromJavaObject>]): Comparator[BigDecimal]

Унаследовано от Comparator

def thenComparing(x$0: Comparator[_ >: BigDecimal <: <FromJavaObject>]): Comparator[BigDecimal]

Унаследовано от Comparator

def thenComparingDouble(x$0: ToDoubleFunction[_ >: BigDecimal <: <FromJavaObject>]): Comparator[BigDecimal]

Унаследовано от Comparator

def thenComparingInt(x$0: ToIntFunction[_ >: BigDecimal <: <FromJavaObject>]): Comparator[BigDecimal]

Унаследовано от Comparator

def thenComparingLong(x$0: ToLongFunction[_ >: BigDecimal <: <FromJavaObject>]): Comparator[BigDecimal]

Унаследовано от Comparator

Source
def tryCompare(x: BigDecimal, y: BigDecimal): Option[Int]

Возвращает, определено ли сравнение между x и y, и если да, то результат compare(x, y).

Унаследовано от Ordering

Унаследованные неявные методы

Source
implicit def mkOrderingOps(lhs: BigDecimal): OrderingOps

Этот неявный метод дополняет T операторами сравнения, определенными в scala.math.Ordering.Ops.

Унаследовано от Ordering

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.1.1/scala/math/Ordering$$BigDecimalOrdering.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API