Spec-Zone.ru › Scala 3.1

Объект scala.math.BigDecimalAsIfIntegral

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

объект BigDecimalAsIfIntegral extends BigDecimalAsIfIntegral с 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): BigDecimal

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

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

Унаследовано от 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

Source
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

Source
def one: BigDecimal

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

Source
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

Source
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

Source
def parseString(str: String): Option[BigDecimal]

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

Source
def plus(x: BigDecimal, y: BigDecimal): BigDecimal

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

Source
def quot(x: BigDecimal, y: BigDecimal): BigDecimal

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

Source
def rem(x: BigDecimal, y: BigDecimal): BigDecimal

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

Source
override def reverse: Ordering[BigDecimal]

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

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

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

def reversed(): Comparator[BigDecimal]

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

Source
def sign(x: BigDecimal): BigDecimal

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

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 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: BigDecimal

Наследуется от 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.1.1/scala/math/Numeric$$BigDecimalAsIfIntegral$.html

Spec-Zone.ru

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