Spec-Zone.ru › Scala 2.13 Library

Trait scala.math.PartialOrdering

Companion object PartialOrdering

trait PartialOrdering[T] extends Equiv[T]

Трактат для представления частичных порядков. Важно различать тип, имеющий частичный порядок, и представление частичного порядка для некоторого типа. Данный трактат предназначен для представления последнего.

Частичный порядок — это бинарное отношение на типе T, представленное как метод lteq данного трактата. Это отношение должно быть:

  • рефлексивным: lteq(x, x) == true, для любого x типа T.
  • антисимметричным: если lteq(x, y) == true и lteq(y, x) == true, то equiv(x, y) == true, для любых x и y типа T.
  • транзитивным: если lteq(x, y) == true и lteq(y, z) == true, то lteq(x, z) == true, для любых x, y, и z типа T.

Кроме того, частичный порядок индуцирует отношение эквивалентности на типе T: x и y типа T эквивалентны тогда и только тогда, когда lteq(x, y) && lteq(y, x) == true. Это отношение эквивалентности представлено методом equiv, унаследованным от трактата Equiv.

Тип объекта
PartialOrdering[T]
Источник
PartialOrdering.scala
С момента

2.7

Линейные супертипы
Equiv[T], java.io.Serializable, AnyRef, Any
Известные подклассы
ValueOrdering, DeadlineIsOrdered, DurationIsOrdered, FiniteDurationIsOrdered, Fractional, Integral, Numeric, BigDecimalAsIfIntegral, BigDecimalAsIfIntegral, BigDecimalIsConflicted, BigDecimalIsFractional, BigDecimalIsFractional, BigIntIsIntegral, BigIntIsIntegral, ByteIsIntegral, ByteIsIntegral, CharIsIntegral, CharIsIntegral, DoubleIsFractional, DoubleIsFractional, FloatIsFractional, FloatIsFractional, IntIsIntegral, IntIsIntegral, LongIsIntegral, LongIsIntegral, ShortIsIntegral, ShortIsIntegral, Ordering, BigDecimal, BigDecimalOrdering, BigInt, BigIntOrdering, Boolean, BooleanOrdering, Byte, ByteOrdering, CachedReverse, Char, CharOrdering, IeeeOrdering, IeeeOrdering, TotalOrdering, TotalOrdering, IeeeOrdering, IeeeOrdering, TotalOrdering, TotalOrdering, Int, IntOrdering, Long, LongOrdering, OptionOrdering, Short, ShortOrdering, String, StringOrdering, Symbol, SymbolOrdering, Unit, UnitOrdering, DeprecatedDoubleOrdering, DeprecatedFloatOrdering

Абстрактные члены-значения

abstract def lteq(x: T, y: T): Boolean

abstract def tryCompare(x: T, y: T): Option[Int]

Результат сравнения x с операндом y. Возвращает None если операнды не сравнимы. Если операнды сравнимы, возвращает Some(r), где

    r < 0 если x < y r == 0 если x == y r > 0 если x > y

Члены-значения конкретных типов

final def !=(arg0: Any): Boolean

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

returns

true если !(this == that), в противном случае false.

Definition Classes
AnyRef → Any

final def ##(): Int

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

returns

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

Definition Classes
AnyRef → Any

def +(other: String): String

Неявное
Этот член добавляется неявным преобразованием из PartialOrdering[T] вany2stringadd[PartialOrdering[T]], выполненным методом any2stringadd в scala.Predef.
Definition Classes
any2stringadd

def ->[B](y: B): (PartialOrdering[T], B)

Неявное
Этот член добавляется неявным преобразованием из PartialOrdering[T] вArrowAssoc[PartialOrdering[T]], выполненным методом ArrowAssoc в scala.Predef.
Definition Classes
ArrowAssoc
Аннотации
@inline()

final def ==(arg0: Any): Boolean

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

returns

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

Definition Classes
AnyRef → Any

final def asInstanceOf[T0]: T0

Приведение объекта получателя к типу T0.

Обратите внимание, что успех приведения в ходе выполнения зависит от семантики стирания Scala. Поэтому выражение 1.asInstanceOf[String] вызовет ClassCastException во время выполнения, в то время как выражение List(1).asInstanceOf[List[String]] не вызовет. В последнем примере, так как аргумент типа стирается при компиляции, невозможно проверить, соответствуют ли содержимое списка требуемому типу.

returns

объект получателя.

Definition Classes
Any
Исключения

ClassCastException, если объект получателя не является экземпляром стирания типа T0.

def clone(): AnyRef

Создание копии объекта получателя.

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

returns

копия объекта получателя.

Атрибуты
protected[java.lang]
Definition Classes
AnyRef
Аннотации
@throws(classOf[java.lang.CloneNotSupportedException]) @native()
Примечание

не специфицировано SLS как член AnyRef

def ensuring(cond: (PartialOrdering[T]) => Boolean, msg: => Any): PartialOrdering[T]

Неявное
Этот член добавляется неявным преобразованием из PartialOrdering[T] вEnsuring[PartialOrdering[T]], выполненным методом Ensuring в scala.Predef.
Definition Classes
Ensuring

def ensuring(cond: (PartialOrdering[T]) => Boolean): PartialOrdering[T]

Неявный
Этот член добавлен неявным преобразованием из PartialOrdering[T] в Ensuring[PartialOrdering[T]] при помощи метода Ensuring в scala.Predef.
Классы определений
Ensuring

def ensuring(cond: Boolean, msg: => Any): PartialOrdering[T]

Неявный
Этот член добавлен неявным преобразованием из PartialOrdering[T] в Ensuring[PartialOrdering[T]] при помощи метода Ensuring в scala.Predef.
Классы определений
Ensuring

def ensuring(cond: Boolean): PartialOrdering[T]

Неявный
Этот член добавлен неявным преобразованием из PartialOrdering[T] в Ensuring[PartialOrdering[T]] при помощи метода Ensuring в scala.Predef.
Классы определений
Ensuring

final def eq(arg0: AnyRef): Boolean

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

Метод eq реализует отношение эквивалентности на непустых экземплярах AnyRef, и имеет три дополнительных свойства:

    Он является согласованным: для любых непустых экземпляров x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false. Для любого непустого экземпляра 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: T, y: T): Boolean

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

Классы определений
PartialOrdering → Equiv

def finalize(): Unit

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

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

Атрибуты
protected[java.lang]
Классы определений
AnyRef
Аннотации
@throws(classOf[java.lang.Throwable])
Примечание

не указано SLS как член AnyRef

def formatted(fmtstr: String): String

Возвращает строку, отформатированную в соответствии с заданной строкой format. Строки формата такие же, как для String.format (@см. java.lang.String.format).

Неявный
Этот член добавлен неявным преобразованием из PartialOrdering[T] в StringFormat[PartialOrdering[T]] при помощи метода StringFormat в scala.Predef.
Классы определений
StringFormat
Аннотации
@inline()

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

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

возвращает

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

Определяющие классы
AnyRef → Any
Аннотации
@native()

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

def gteq(x: T, y: T): Boolean

def hashCode(): Int

Метод hashCode для ссылочных типов. См. hashCode в scala.Any.

возвращает

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

Определяющие классы
AnyRef → Any
Аннотации
@native()

final def isInstanceOf[T0]: Boolean

Проверка, является ли динамический тип объекта получателя T0.

Обратите внимание, что результат теста определяется семантикой стирания Scala. Следовательно, выражение 1.isInstanceOf[String] вернёт false, а выражение List(1).isInstanceOf[List[String]] вернёт true. В последнем примере из-за стирания типа аргумента в ходе компиляции нельзя проверить, относятся ли элементы списка к указанному типу.

возвращает

true , если объект получателя является экземпляром стирания типа T0; false в противном случае.

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

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

final def ne(arg0: AnyRef): Boolean

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

возвращает

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

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

final def notify(): Unit

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

Определяющие классы
AnyRef
Аннотации
@native()
Примечание

не указано SLS как член AnyRef

final def notifyAll(): Unit

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

Определяющие классы
AnyRef
Аннотации
@native()
Примечание

не указано SLS как член AnyRef

def reverse: PartialOrdering[T]

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

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

def toString(): String

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

возвращает

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

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

final def wait(): Unit

Определяющие классы
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long, arg1: Int): Unit

Определяющие классы
AnyRef
Аннотации
@throws(classOf[java.lang.InterruptedException])

final def wait(arg0: Long): Unit

Определяющие классы
AnyRef
Аннотации
@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/PartialOrdering.html

Spec-Zone.ru

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