Spec-Zone.ru › Scala 3.2

Трейт ScalaNumberProxy.ScalaNumberProxy

Исходный код

trait ScalaNumberProxy[T] extends ScalaNumericAnyConversions with Typed[T] with OrderedProxy[T]

Базовые классы для оболочек Rich* примитивных типов. Как и все классы в scala.runtime.*, это не поддерживаемый API.

Суператрибуты
Трейт OrderedProxy[T]
Трейт Ordered[T]
Трейт Comparable[T]
Класс Object
Трейт Matchable
Трейт Typed[T]
Трейт Proxy
Трейт ScalaNumericAnyConversions
Класс Any
Известные подтипы
Трейт FractionalProxy[T]
Класс RichDouble
Класс RichFloat
Класс RichInt
Трейт ScalaWholeNumberProxy[T]
Трейт IntegralProxy[T]
Класс RichChar
Класс RichLong
Класс RichByte
Класс RichShort

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

Исходный код
def abs: T

Возвращает абсолютное значение this.

Исходный код
def byteValue: Byte

Исходный код
def doubleValue: Double

Исходный код
def floatValue: Float

Исходный код
def intValue: Int

Исходный код
def longValue: Long

Исходный код
def max(that: T): T

Возвращает this если this > that или that в противном случае.

Исходный код
def min(that: T): T

Возвращает this если this < that или that в противном случае.

Исходный код
def shortValue: Short

Исходный код
def sign: T

Возвращает знак this. Ноль, если аргумент равен нулю, -ноль, если аргумент равен -нолю, единица, если аргумент больше нуля, -единица, если аргумент меньше нуля, и NaN, если аргумент NaN, где применимо.

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

Исходный код
def <(that: T): Boolean

Возвращает true, если this меньше, чем that

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

Исходный код
def <=(that: T): Boolean

Возвращает true, если this меньше или равно that.

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

Исходный код
def >(that: T): Boolean

Возвращает true, если this больше, чем that.

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

Исходный код
def >=(that: T): Boolean

Возвращает true, если this больше или равно that.

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

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

Результат сравнения this с операндом that.

Реализуйте этот метод, чтобы определить, как будут сортироваться экземпляры A.

Возвращает x, где:

  • x < 0 когда this < that

  • x == 0 когда this == that

  • x > 0 когда this > that

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

Исходный код
def compareTo(that: T): Int

Результат сравнения this с операндом that.

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

Исходный код
override def equals(that: Any): Boolean

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

Любая реализация этого метода должна быть отношением эквивалентности:

- Рефлексивно: для любого экземпляра x типа Any, x.equals(x) должен возвращать true. - Симметрично: для любых экземпляров x и y типа Any, x.equals(y) должен возвращать true тогда и только тогда, когда y.equals(x) возвращает true. - Транзитивно: для любых экземпляров x, y, и z типа Any если x.equals(y) возвращает true и y.equals(z) возвращает true, тогда x.equals(z) должен возвращать true.

Если вы переопределяете этот метод, вы должны убедиться, что ваша реализация остаётся отношением эквивалентности. Кроме того, при переопределении этого метода обычно необходимо переопределить hashCode для обеспечения того, что объекты, которые «равны» (o1.equals(o2) возвращает true), имеют одинаковый хэш-код scala.Int. (o1.hashCode.equals(o2.hashCode)).

Параметры значения
that

объект для сравнения с этим объектом на равенство.

Возвращает

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

Классы определений Proxy -> Any
Наследованно от Proxy

Исходный код
override def hashCode: Int

Вычисляет значение хэша для объекта.

Алгоритм хэширования по умолчанию зависит от платформы.

Обратите внимание, что для двух объектов допустимо иметь одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)) но не быть равными (o1.equals(o2) возвращает false). Вырожденная реализация могла бы всегда возвращать 0. Однако требуется, чтобы если два объекта равны (o1.equals(o2) возвращает true)., то у них одинаковые хэш-коды (o1.hashCode.equals(o2.hashCode)). Поэтому при переопределении этого метода обязательно проверяйте соответствие методу equals.

END_OF_DOCUMENT_MARKER
Возвращает

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

Определяющие классы Proxy -> Any
Унаследовано от Proxy

Источник
def isValidByte: Boolean

Возвращает true если у этого числа нулевая дробная часть и оно находится в диапазоне от scala.Byte MinValue до MaxValue; в противном случае возвращает false.

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

Источник
def isValidChar: Boolean

Возвращает true если у этого числа нулевая дробная часть и оно находится в диапазоне от scala.Char MinValue до MaxValue; в противном случае возвращает false.

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

Источник
def isValidInt: Boolean

Возвращает true если у этого числа нулевая дробная часть и оно находится в диапазоне от scala.Int MinValue до MaxValue; в противном случае возвращает false.

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

Источник
def isValidShort: Boolean

Возвращает true если у этого числа нулевая дробная часть и оно находится в диапазоне от scala.Short MinValue до MaxValue; в противном случае возвращает false.

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

Источник
def isWhole: Boolean

Возвращает

true если у этого числа нет дробной части, false в противном случае.

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

Источник
protected def ord: Ordering[T]

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

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

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

Источник
def toByte: Byte

Возвращает значение этого объекта как scala.Byte. Может потребоваться округление или усечение.

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

Источник
def toChar: Char

Возвращает значение этого объекта как scala.Char. Может потребоваться округление или усечение.

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

Источник
def toDouble: Double

Возвращает значение этого объекта как scala.Double. Может потребоваться округление или усечение.

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

Источник
def toFloat: Float

Возвращает значение этого объекта как scala.Float. Может потребоваться округление или усечение.

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

Источник
def toInt: Int

Возвращает значение этого объекта как scala.Int. Может потребоваться округление или усечение.

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

Источник
def toLong: Long

Возвращает значение этого объекта как scala.Long. Может потребоваться округление или усечение.

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

Источник
def toShort: Short

Возвращает значение этого объекта как scala.Short. Может потребоваться округление или усечение.

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

Источник
override def toString: String

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

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

Возвращает

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

Определяющие классы Proxy -> Any
Унаследовано от Proxy

Источник
protected def unifiedPrimitiveEquals(x: Any): Boolean

Должен вызываться только после исключения всех известных типов, не являющихся примитивами. Этот метод не будет перенаправлен никуда больше после проверки на примитивы, чтобы избежать бесконечной рекурсии между equals и этим для неизвестных вариантов «Число».

Кроме того, он должен вызываться только в том случае, если числовой тип может быть преобразован в Long, Float и Double. Например, если сюда передать BigInt, намного большего, чем диапазон Long, он заявит об равенстве с любым Long, оставшимся в его нижних 64 битах. Или BigDecimal с большей точностью, чем может содержать Double: то же самое. Нет способа, учитывая доступный здесь интерфейс, предотвратить эту ошибку.

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

Источник
protected def unifiedPrimitiveHashcode: Int

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

Неявные параметры

Источник
implicit protected def num: Numeric[T]

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/runtime/ScalaNumberProxy.html

Spec-Zone.ru

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