Spec-Zone.ru › Scala 3.2

Особенность Numeric.ShortIsIntegral

Объект-компаньон • Исходный код

трайт ShortIsIntegral extends Integral[Short]

Супертипы
трайт Integral[Short]
трайт Numeric[Short]
трайт Ordering[Short]
трайт PartialOrdering[Short]
трайт Equiv[Short]
трайт Serializable
трайт Comparator[Short]
класс Object
трайт Matchable
класс Any
Известные подтипы
объект ShortIsIntegral.type

Наследуемые классы

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

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

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

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

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

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

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

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

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

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

Исходный код
def minus(x: Short, y: Short): Short

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

Исходный код
def parseString(str: String): Option[Short]

Исходный код
def plus(x: Short, y: Short): Short

Исходный код
def quot(x: Short, y: Short): Short

Исходный код
def rem(x: Short, y: Short): Short

Исходный код
override def sign(x: Short): Short

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

Исходный код
override def signum(x: Short): Int

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

Исходный код
def times(x: Short, y: Short): Short

Исходный код
def toDouble(x: Short): Double

Исходный код
def toFloat(x: Short): Float

Исходный код
def toInt(x: Short): Int

Исходный код
def toLong(x: Short): Long

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

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

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

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

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

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

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

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

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

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

Классы-определения Ordering -> PartialOrdering -> Equiv
Наследуется от Ordering

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

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

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

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

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

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

Исходный код
def isReverseOf(other: Ordering[_]): Boolean

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

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

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

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

Source
override def lt(x: Short, y: Short): Boolean

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

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

Source
override def lteq(x: Short, y: Short): Boolean

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

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

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

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

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

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

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

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

Source
def on[U](f: U => Short): Ordering[U]

Принимая функцию f, преобразующую U в T, создаёт Ordering[U], функция сравнения которого эквивалентна:

def compare(x:U, y:U) = Ordering[T].compare(f(x), f(y))
Унаследовано от Ordering

Source
def one: T

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

Source
def orElse(other: Ordering[Short]): 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

Source
def orElseBy[S](f: Short => 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

Source
override def reverse: Ordering[T]

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

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

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

def reversed(): Comparator[T]

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

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

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

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

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

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

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

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

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

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

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

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

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

Source
def tryCompare(x: Short, y: Short): Option[Int]

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

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

Source
def zero: T

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

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

Исходный код
implicit override def mkNumericOps(lhs: Short): IntegralOps

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

Исходный код
implicit def mkOrderingOps(lhs: Short): 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$$ShortIsIntegral.html

Spec-Zone.ru

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