Spec-Zone.ru › Scala 3.2

Объект Numeric.BigDecimalAsIfIntegral

Класс-компаньон • Исходный код

объект BigDecimalAsIfIntegral extends BigDecimalAsIfIntegral with BigDecimalOrdering

Типы-супертипы
Трейт BigDecimalOrdering
Трейт BigDecimalAsIfIntegral
Трейт Integral[BigDecimal]
Трейт BigDecimalIsConflicted
Трейт Numeric[BigDecimal]
Трейт Ordering[BigDecimal]
Трейт PartialOrdering[BigDecimal]
Трейт Equiv[BigDecimal]
Трейт Serializable
Трейт Comparator[BigDecimal]
Класс Object
Трейт Matchable
Класс Any
Тип самого объекта
BigDecimalAsIfIntegral.type

Наследуемые классы-подобные сущности

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

Наследуется от Integral

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

Наследуется от Numeric

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

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

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

Наследуется от Ordering

Наследуемые методы

Исходный код
def abs(x: BigDecimal): T

Наследуется от Numeric

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

Возвращает целое число, знак которого указывает, как x сравнивается с y.

Знак результата имеет следующее значение:

- отрицательный, если x < y - положительный, если x > y - нулевой в противном случае (если x == y)

Наследуется от BigDecimalOrdering

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

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

Определяющие классы Ordering -> PartialOrdering -> Equiv
Наследуется от Ordering

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

Наследуется от BigDecimalIsConflicted

Исходный код
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 является обратным к этому порядку.

Эквивалентно 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 minus(x: BigDecimal, y: BigDecimal): BigDecimal

Наследуется от BigDecimalIsConflicted

Исходный код
def negate(x: BigDecimal): BigDecimal

Наследуется от BigDecimalIsConflicted

Источник
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 one: T

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

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

Создаёт 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[T]

Учитывая 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

Источник
def parseString(str: String): Option[BigDecimal]

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

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

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

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

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

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

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

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

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

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

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

def reversed(): Comparator[T]

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

Источник
def sign(x: BigDecimal): T

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник
def toDouble(x: BigDecimal): Double

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

Источник
def toFloat(x: BigDecimal): Float

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

Источник
def toInt(x: BigDecimal): Int

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

Источник
def toLong(x: BigDecimal): Long

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

Источник
def tryCompare(x: BigDecimal, y: BigDecimal): Option[Int]

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

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

Источник
def zero: T

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

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

Источник
implicit override def mkNumericOps(lhs: BigDecimal): IntegralOps

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

Источник
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.2.0/scala/math/Numeric$$BigDecimalAsIfIntegral$.html

Spec-Zone.ru

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