Spec-Zone.ru › Scala 2.13 Library

Трейт scala.math.Integral

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

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

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

2.8

Линейные супертипы
Numeric[T], Ordering[T], PartialOrdering[T], Equiv[T], java.io.Serializable, Comparator[T], AnyRef, Any
Известные подклассы
BigDecimalAsIfIntegral, BigDecimalAsIfIntegral, BigIntIsIntegral, BigIntIsIntegral, ByteIsIntegral, ByteIsIntegral, CharIsIntegral, CharIsIntegral, IntIsIntegral, IntIsIntegral, LongIsIntegral, LongIsIntegral, ShortIsIntegral, ShortIsIntegral

Члены типа

класс IntegralOps 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 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 quot(x: T, y: T): T

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

абстрактный 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

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

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

Неявный
Этот член добавлен с помощью неявного преобразования из Integral[T] в ArrowAssoc[Integral[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: (Integral[T]) => Boolean, msg: => Any): Integral[T]

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

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

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

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

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

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

Неявный
Этот член добавлен неявным преобразованием из Integral[T] в Ensuring[Integral[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 и взаимодействия его с нелокальными возвратами и исключениями зависят от платформы.

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

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

def formatted(fmtstr: String): String

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

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

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

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

returns

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

Definition Classes
AnyRef → Any
Annotations
@native()

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

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

Definition Classes
Ordering → PartialOrdering

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

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

Definition Classes
Ordering → PartialOrdering

def hashCode(): Int

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

returns

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

Definition Classes
AnyRef → Any
Annotations
@native()

final def isInstanceOf[T0]: Boolean

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

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

returns

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

Definition Classes
Any

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

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

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

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

Definition Classes
Ordering

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

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

Definition Classes
Ordering → PartialOrdering

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

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

Definition Classes
Ordering → PartialOrdering

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

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

Definition Classes
Ordering

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

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

Definition Classes
Ordering

implicit def mkNumericOps(lhs: T): IntegralOps

Definition Classes
Integral → Numeric

implicit def mkOrderingOps(lhs: T): OrderingOps

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

Definition Classes
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]

Definition Classes
Comparator

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

Definition Classes
Comparator

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

Definition Classes
Comparator

def toString(): String

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

returns

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

Definition Classes
AnyRef → Any

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

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

Definition Classes
Ordering → PartialOrdering

final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])

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

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.InterruptedException]) @native()

def zero: T

Definition Classes
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/Integral.html

Spec-Zone.ru

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