Spec-Zone.ru › Scala 3.2

Трейт Ordering.ShortOrdering

Исходный код

Трейт ShortOrdering extends Ordering[Short]

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

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

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

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

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

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

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

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

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

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

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

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

Исходный код
переопределенный def equiv(x: Short, y: Short): Boolean

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

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

Исходный код
переопределенный def gt(x: Short, y: Short): Boolean

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

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

Исходный код
переопределенный def gteq(x: Short, y: Short): Boolean

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

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

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

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

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

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

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

Исходный код
переопределенный def lt(x: Short, y: Short): Boolean

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

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

Источник
override def lteq(x: Short, y: Short): Boolean

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

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

Источник
def max[U <: Short](x: U, y: U): U

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

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

Источник
def min[U <: Short](x: U, y: U): U

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

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

Источник
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

Источник
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

Источник
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

Источник
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]

Inherited from Comparator

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

Inherited from Comparator

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

Inherited from Comparator

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

Inherited from Comparator

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

Inherited from Comparator

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

Inherited from Comparator

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

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

Inherited from Ordering

Inherited implicits

Source
implicit def mkOrderingOps(lhs: Short): OrderingOps

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

Inherited from 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/Ordering$$ShortOrdering.html

Spec-Zone.ru

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