Spec-Zone.ru › Scala 2.13 Library

Объект scala.Enumeration.ValueOrdering

неявный объект ValueOrdering extends Ordering[Value]

Порядок сортировки по идентификатору для значений этого набора

Источник
Enumeration.scala
Линейные супертипы
math.Ordering[Value], math.PartialOrdering[Value], math.Equiv[Value], java.io.Serializable, Comparator[Value], AnyRef, Any

Типовые члены

класс OrderingOps extends AnyRef

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

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

Значения членов

final def !=(arg0: Any): Boolean

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

возвращает

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

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

final def ##(): Int

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

возвращает

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

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

final def ==(arg0: Any): Boolean

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

возвращает

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

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

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 compare(x: Value, y: Value): Int

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

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

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

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: Value, y: Value): Boolean

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

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

def finalize(): Unit

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

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

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws(classOf[java.lang.Throwable])
Note

not specified by SLS as a member of AnyRef

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

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

returns

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

Definition Classes
AnyRef → Any
Annotations
@native()

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

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

Definition Classes
Ordering → PartialOrdering

def gteq(x: Value, y: Value): 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: math.Ordering[_]): Boolean

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

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

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

Definition Classes
Ordering

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

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

Definition Classes
Ordering → PartialOrdering

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

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

Definition Classes
Ordering → PartialOrdering

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

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

Definition Classes
Ordering

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

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

Definition Classes
Ordering

implicit def mkOrderingOps(lhs: Value): OrderingOps

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

Definition Classes
Ordering

final def ne(arg0: AnyRef): Boolean

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

returns

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

Definition Classes
AnyRef

final def notify(): Unit

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

Definition Classes
AnyRef
Annotations
@native()
Note

not specified by SLS as a member of AnyRef

final def notifyAll(): Unit

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

Definition Classes
AnyRef
Annotations
@native()
Note

not specified by SLS as a member of AnyRef

def on[U](f: (U) => Value): math.Ordering[U]

Учитывая f, функцию от U до T, создает Ordering[U], функция сравнения которого эквивалентна:

def compare(x:U, y:U) = Ordering[T].compare(f(x), f(y))
Definition Classes
Ordering

def orElse(other: math.Ordering[Value]): math.Ordering[Value]

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

other

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

Definition Classes
Ordering
Example:
    case class Pair(a: Int, b: Int)
    
    val pairOrdering = Ordering.by[Pair, Int](_.a)
                               .orElse(Ordering.by[Pair, Int](_.b))

def orElseBy[S](f: (Value) => S)(implicit ord: math.Ordering[S]): math.Ordering[Value]

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

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

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

Definition Classes
Ordering
Example:
    case class Pair(a: Int, b: Int)
    
    val pairOrdering = Ordering.by[Pair, Int](_.a)
                               .orElseBy[Int](_.b)

def reverse: math.Ordering[Value]

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

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

Definition Classes
Ordering → PartialOrdering

def reversed(): Comparator[Value]

Definition Classes
Comparator

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

Definition Classes
AnyRef

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

Definition Classes
Comparator

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

Definition Classes
Comparator

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

Definition Classes
Comparator

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

Definition Classes
Comparator

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

Definition Classes
Comparator

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

Definition Classes
Comparator

def toString(): String

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

returns

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

Definition Classes
AnyRef → Any

def tryCompare(x: Value, y: Value): 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()

© 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/Enumeration$ValueOrdering$.html

Spec-Zone.ru

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