Spec-Zone.ru › Scala 2.13 Library

Трейт scala.math.Fractional

Компаньон объект Fractional

трейт Fractional[T] extends Numeric[T]

Источник
Fractional.scala
С

2.8

Линейные супертипы
Numeric[T], Ordering[T], PartialOrdering[T], Equiv[T], java.io.Serializable, Comparator[T], AnyRef, Any
Известные подклассы
BigDecimalIsFractional, BigDecimalIsFractional, DoubleIsFractional, DoubleIsFractional, FloatIsFractional, FloatIsFractional

Члены типа

класс FractionalOps extends NumericOps

класс NumericOps extends AnyRef

Определяющие классы
Numeric

класс OrderingOps extends AnyRef

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

Определяющие классы
Ordering

Абстрактные члены-значения

абстрактный def compare(x: T, y: T): Int

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

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

    отрицательный, если x < yположительный, если x > yноль, в противном случае (если x == y)
Определяющие классы
Ordering → Comparator

абстрактный def div(x: T, y: T): T

абстрактный def fromInt(x: Int): T

Определяющие классы
Numeric

абстрактный def minus(x: T, y: T): T

Определяющие классы
Numeric

абстрактный def negate(x: T): T

Определяющие классы
Numeric

абстрактный def parseString(str: String): Option[T]

Определяющие классы
Numeric

абстрактный def plus(x: T, y: T): T

Определяющие классы
Numeric

абстрактный def times(x: T, y: T): T

Определяющие классы
Numeric

абстрактный def toDouble(x: T): Double

Определяющие классы
Numeric

абстрактный def toFloat(x: T): Float

Определяющие классы
Numeric

абстрактный def toInt(x: T): Int

Определяющие классы
Numeric

абстрактный def toLong(x: T): Long

Определяющие классы
Numeric

Члены-значения

final def !=(arg0: Any): Boolean

Проверка двух объектов на неравенство.

возвращает

true если !(this == that), иначе false.

Определяющие классы
AnyRef → Any

final def ##(): Int

Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для чисел возвращает хэш-значение, согласованное с равенством по значению: если два экземпляра типа значения сравниваются как true, то ## возвращает одинаковое хэш-значение для каждого из них. Для null возвращает хэш-код, где null.hashCode вызывает NullPointerException.

возвращает

хэш-значение, согласованное с ==

Определяющие классы
AnyRef → Any

def +(other: String): String

Неявный
Этот член добавлен с помощью неявного преобразования из Fractional[T] в any2stringadd[Fractional[T]], выполненного методом any2stringadd в scala.Predef.
Определяющие классы
any2stringadd

def ->[B](y: B): (Fractional[T], B)

Неявный
Этот член добавлен с помощью неявного преобразования из Fractional[T] в ArrowAssoc[Fractional[T]], выполненного методом ArrowAssoc в scala.Predef.
Определяющие классы
ArrowAssoc
Аннотации
@inline()

final def ==(arg0: Any): Boolean

Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).

возвращает

true если объект-получатель эквивалентен аргументу; false в противном случае.

Определяющие классы
AnyRef → Any

def abs(x: T): T

Определяющие классы
Numeric

final def asInstanceOf[T0]: T0

Приведение объекта-получателя к типу T0.

Обратите внимание, что успех приведения в ходе выполнения зависит от правил стирания Scala. Таким образом, выражение 1.asInstanceOf[String] вызовет ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] — нет. В последнем примере, так как тип аргумента стирается во время компиляции, нельзя проверить, соответствуют ли содержимое списка требуемому типу.

возвращает

объект-получатель.

Определяющие классы
Any
Исключения

ClassCastException, если объект-получатель не является экземпляром стираемого типа T0.

def clone(): AnyRef

Создаёт копию объекта-получателя.

По умолчанию реализация метода clone зависит от платформы.

возвращает

копию объекта-получателя.

Атрибуты
protected[java.lang]
Определяющие классы
AnyRef
Аннотации
@throws(classOf[java.lang.CloneNotSupportedException]) @native()
Примечание

не указан в SLS как член AnyRef

def ensuring(cond: (Fractional[T]) => Boolean, msg: => Any): Fractional[T]

Неявный
Этот член добавлен с помощью неявного преобразования из Fractional[T] в Ensuring[Fractional[T]], выполненного методом Ensuring в scala.Predef.
Определяющие классы
Ensuring

def ensuring(cond: (Fractional[T]) => Boolean): Fractional[T]

Неявный
Этот член добавлен неявным преобразованием из Fractional[T] в Ensuring[Fractional[T]], выполненным методом Ensuring в scala.Predef.
Классы определений
Ensuring

def ensuring(cond: Boolean, msg: => Any): Fractional[T]

Неявный
Этот член добавлен неявным преобразованием из Fractional[T] в Ensuring[Fractional[T]], выполненным методом Ensuring в scala.Predef.
Классы определений
Ensuring

def ensuring(cond: Boolean): Fractional[T]

Неявный
Этот член добавлен неявным преобразованием из Fractional[T] в Ensuring[Fractional[T]], выполненным методом Ensuring в scala.Predef.
Классы определений
Ensuring

final def eq(arg0: AnyRef): Boolean

Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).

Метод eq реализует отношение эквивалентности для не-null экземпляров AnyRef, и обладает тремя дополнительными свойствами:

    Он согласован: для любых не-null экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false. Для любого не-null экземпляра x типа AnyRef, x.eq(null) и null.eq(x) возвращают false. null.eq(null) возвращает true.

При переопределении методов equals или hashCode важно обеспечить согласованность их поведения с равенством ссылок. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и они должны иметь одинаковое значение хэша (o1.hashCode == o2.hashCode).

возвращает

true если аргумент является ссылкой на объект-получатель; false в противном случае.

Классы определений
AnyRef

def equals(arg0: AnyRef): Boolean

Метод равенства для ссылочных типов. По умолчанию делегирует вызов к eq.

См. также equals в scala.Any.

возвращает

true если объект-получатель эквивалентен аргументу; false в противном случае.

Классы определений
AnyRef → Any

def equiv(x: T, y: T): Boolean

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

Классы определений
Ordering → PartialOrdering → Equiv

def finalize(): Unit

Вызывается сборщиком мусора для объекта-получателя, когда больше нет ссылок на объект.

Подробности о том, когда и вызывается метод finalize, а также взаимодействии между finalize и нелокальными возвратами и исключениями, зависят от платформы.

Атрибуты
protected[java.lang]
Классы определений
AnyRef
Аннотации
@throws(classOf[java.lang.Throwable])
Примечание

не указан SLS как член AnyRef

def formatted(fmtstr: String): String

Возвращает строку, отформатированную в соответствии с заданной format строкой. Строки форматирования аналогичны строкам форматирования String.format (@см java.lang.String.format).

Неявный
Этот член добавлен неявным преобразованием из Fractional[T] в StringFormat[Fractional[T]], выполненным методом StringFormat в scala.Predef.
Классы определений
StringFormat
Аннотации
@inline()

final def getClass(): Class[_ <: AnyRef]

Возвращает представление класса объекта во время выполнения.

возвращает

объект класса, соответствующий типу получателя во время выполнения.

Классы определений
AnyRef → Any
Аннотации
@native()

def gt(x: T, y: T): Boolean

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

Классы определений
Ordering → PartialOrdering

def gteq(x: T, y: T): Boolean

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

Классы определений
Ordering → PartialOrdering

def hashCode(): Int

Метод hashCode для ссылочных типов. См. hashCode в scala.Any.

возвращает

значение хэш-кода для этого объекта.

Классы определений
AnyRef → Any
Аннотации
@native()

final def isInstanceOf[T0]: Boolean

Проверка, является ли динамический тип объекта получателя T0.

Обратите внимание, что результат теста зависит от семантики стирания Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, из-за того, что тип аргумента стирается во время компиляции, проверить, являются ли элементы списка указанного типа, невозможно.

возвращает

true , если объект получателя является экземпляром стирания типа T0; false в противном случае.

Классы определений
Any

def isReverseOf(other: Ordering[_]): Boolean

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

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

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

Классы определений
Ordering

def lt(x: T, y: T): Boolean

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

Классы определений
Ordering → PartialOrdering

def lteq(x: T, y: T): Boolean

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

Классы определений
Ordering → PartialOrdering

def max[U <: T](x: U, y: U): U

Возвращает x , если x >= y, в противном случае y.

Классы определений
Ordering

def min[U <: T](x: U, y: U): U

Возвращает x , если x <= y, в противном случае y.

Классы определений
Ordering

implicit def mkNumericOps(lhs: T): FractionalOps

Классы определений
Fractional → Numeric

implicit def mkOrderingOps(lhs: T): OrderingOps

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

Классы определений
Ordering

final def ne(arg0: AnyRef): Boolean

Эквивалентно !(this eq that).

возвращает

true если аргумент не является ссылкой на объект получателя; false в противном случае.

Определяющие классы
AnyRef

final def notify(): Unit

Разбуждает единственную нить, ожидающую монитора объекта получателя.

Определяющие классы
AnyRef
Аннотации
@native()
Примечание

не указано SLS как член AnyRef

final def notifyAll(): Unit

Разбуждает все нити, ожидающие монитора объекта получателя.

Определяющие классы
AnyRef
Аннотации
@native()
Примечание

не указано SLS как член AnyRef

def on[U](f: (U) => T): 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[T]): Ordering[T]

Создает Ordering[T], чья функция сравнения возвращает результат функции сравнения этого Ordering, если она не равна нулю, в противном случае результат функции сравнения other.

other

Ordering, используемый, если этот Ordering возвращает ноль

Определяющие классы
Ordering
Пример:
    case class Pair(a: Int, b: Int)
    
    val pairOrdering = Ordering.by[Pair, Int](_.a)
                               .orElse(Ordering.by[Pair, Int](_.b))

def orElseBy[S](f: (T) => S)(implicit ord: Ordering[S]): Ordering[T]

На основе функции f, отображающей T в S, создает Ordering[T], чья функция сравнения возвращает результат функции сравнения этого Ordering, если она не равна нулю, в противном случае результат, эквивалентный:

Ordering[S].compare(f(x), f(y))

Эта функция эквивалентна передаче результата Ordering.by(f) в orElse.

Определяющие классы
Ordering
Пример:
    case class Pair(a: Int, b: Int)
    
    val pairOrdering = Ordering.by[Pair, Int](_.a)
                               .orElseBy[Int](_.b)

def reverse: Ordering[T]

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

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

Определяющие классы
Ordering → PartialOrdering

def reversed(): Comparator[T]

Определяющие классы
Comparator

def sign(x: T): T

Определяющие классы
Numeric

final def synchronized[T0](arg0: => T0): T0

Определяющие классы
AnyRef

def thenComparing[U <: Comparable[_ >: U <: AnyRef]](arg0: java.util.function.Function[_ >: T <: AnyRef, _ <: U]): Comparator[T]

Определяющие классы
Comparator

def thenComparing[U <: AnyRef](arg0: java.util.function.Function[_ >: T <: AnyRef, _ <: U], arg1: Comparator[_ >: U <: AnyRef]): Comparator[T]

Определяющие классы
Comparator

def thenComparing(arg0: Comparator[_ >: T <: AnyRef]): Comparator[T]

Классы-определения
Comparator

def thenComparingDouble(arg0: ToDoubleFunction[_ >: T <: AnyRef]): Comparator[T]

Классы-определения
Comparator

def thenComparingInt(arg0: ToIntFunction[_ >: T <: AnyRef]): Comparator[T]

Классы-определения
Comparator

def thenComparingLong(arg0: ToLongFunction[_ >: T <: AnyRef]): Comparator[T]

Классы-определения
Comparator

def toString(): String

Создаёт строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, "@" и хэш-кода объекта в шестнадцатеричном формате.

возвращает

строковое представление объекта.

Классы-определения
AnyRef → Any

def tryCompare(x: T, y: T): Some[Int]

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

Классы-определения
Ordering → PartialOrdering

final def wait(): Unit

Классы-определения
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long, arg1: Int): Unit

Классы-определения
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long): Unit

Классы-определения
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException]) @native()

def zero: T

Классы-определения
Numeric

© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala/math/Fractional.html

Spec-Zone.ru

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