Spec-Zone.ru › Scala 3.1

Объект scala.math.DeprecatedFloatOrdering

Исходный код

@migration(" По умолчанию неявное упорядочение для чисел с плавающей точкой теперь поддерживает согласованность\n".+(" между методом `compare` и методами `lt`, `min`, `equiv` и т.д.\n").+(" Это означает несоответствие поведению IEEE 754 для -0.0F и NaN.\n").+(" Порядок сортировки чисел с плавающей точкой, однако, остается прежним, при этом NaN находится в конце.\n").+(" Чтобы восстановить предыдущее поведение, импортируйте Ordering.Float.IeeeOrdering.\n").+(" Смотрите также https://www.scala-lang.org/api/current/scala/math/Ordering$$Float$.html."), "2.13.0")
object DeprecatedFloatOrdering extends TotalOrdering

Суперабоненты
Тракт TotalOrdering
Тракт Ordering[Float]
Тракт PartialOrdering[Float]
Тракт Equiv[Float]
Тракт Serializable
Тракт Comparator[Float]
Класс Object
Тракт Matchable
Класс Any
Тип самого себя
DeprecatedFloatOrdering.type

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Исходный код
def max[U <: Float](x: U, y: U): U

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

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

Исходный код
def min[U <: Float](x: U, y: U): U

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

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

Исходный код
def on[U](f: U => Float): 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[Float]): Ordering[Float]

Создаёт 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: Float => S)(implicit ord: Ordering[S]): Ordering[Float]

Принимая 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[Float]

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

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

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

def reversed(): Comparator[Float]

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник
def tryCompare(x: Float, y: Float): Option[Int]

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

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

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

Источник
implicit def mkOrderingOps(lhs: Float): 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.1.1/scala/math/Ordering$$DeprecatedFloatOrdering$.html

Spec-Zone.ru

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