Spec-Zone.ru › Scala 2.13 Library

Объект scala.math.Ordering.Double.TotalOrdering

Компаньон трейт TotalOrdering

неявный объект TotalOrdering extends TotalOrdering

Источник
Ordering.scala
Линейные супертипы
TotalOrdering, Ordering[Double], PartialOrdering[Double], Equiv[Double], java.io.Serializable, Comparator[Double], 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: Double, y: Double): Int

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

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

    отрицательное, если x < yположительное, если x > yноль в противном случае (если x == y)
Классы-определения
TotalOrdering → 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: Double, y: Double): 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: Double, y: Double): Boolean

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

Definition Classes
Ordering → PartialOrdering

def gteq(x: Double, y: Double): 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: Double, y: Double): Boolean

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

Definition Classes
Ordering → PartialOrdering

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

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

Definition Classes
Ordering → PartialOrdering

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

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

Definition Classes
Ordering

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

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

Definition Classes
Ordering

implicit def mkOrderingOps(lhs: Double): 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

не указано SLS в качестве члена AnyRef

final def notifyAll(): Unit

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

Definition Classes
AnyRef
Annotations
@native()
Note

не указано SLS в качестве члена AnyRef

def on[U](f: (U) => Double): 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: Ordering[Double]): Ordering[Double]

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

other

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

Definition Classes
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: (Double) => S)(implicit ord: Ordering[S]): Ordering[Double]

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

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

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

Definition Classes
Ordering
Пример:
    case class Pair(a: Int, b: Int)
    
    val pairOrdering = Ordering.by[Pair, Int](_.a)
                               .orElseBy[Int](_.b)

def reverse: Ordering[Double]

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

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

Definition Classes
Ordering → PartialOrdering

def reversed(): Comparator[Double]

Definition Classes
Comparator

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

Definition Classes
AnyRef

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

Definition Classes
Comparator

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

Definition Classes
Comparator

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

Definition Classes
Comparator

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

Definition Classes
Comparator

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

Definition Classes
Comparator

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

Definition Classes
Comparator

def toString(): String

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

возвращает

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

Definition Classes
AnyRef → Any

def tryCompare(x: Double, y: Double): 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/math/Ordering$$Double$$TotalOrdering$.html

Spec-Zone.ru

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