Spec-Zone.ru › Scala 3.1

Объект scala.math.IntIsIntegral

Класс-компаньон • Исходный код

объект IntIsIntegral extends IntIsIntegral с IntOrdering

Суперадресные типы
Трейт IntOrdering
Трейт IntIsIntegral
Трейт Integral[Int]
Трейт Numeric[Int]
Трейт Ordering[Int]
Трейт PartialOrdering[Int]
Трейт Equiv[Int]
Трейт Serializable
Трейт Comparator[Int]
Класс Object
Трейт Matchable
Класс Any
Тип самого себя
IntIsIntegral.type

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

Исходный код
класс IntegralOps(lhs: T) extends NumericOps

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

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

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

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

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

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

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

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

Исходный код
def abs(x: Int): Int

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

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

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

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

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

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

Исходный код
def fromInt(x: Int): Int

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

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

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

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

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

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

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

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

Возвращает true, если порядок other является обратным к этому порядку.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Исходный код
def negate(x: Int): Int

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

Исходный код
def on[U](f: U => Int): Ordering[U]

При заданном f, функции из U в T, создает Ordering[U], чья функция сравнения эквивалентна:

def compare(x:U, y:U) = Ordering[T].compare(f(x), f(y))
Наследуется от Ordering

Исходный код
def one: Int

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

Source
def orElse(other: Ordering[Int]): Ordering[Int]

Создаёт 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

Source
def orElseBy[S](f: Int => S)(implicit ord: Ordering[S]): Ordering[Int]

Принимая функцию 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

Source
def parseString(str: String): Option[Int]

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

Source
def plus(x: Int, y: Int): Int

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

Source
def quot(x: Int, y: Int): Int

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

Source
def rem(x: Int, y: Int): Int

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

Source
override def reverse: Ordering[Int]

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

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

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

def reversed(): Comparator[Int]

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

Source
override def sign(x: Int): Int

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

Source
override def signum(x: Int): Int

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

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

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

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

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

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

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

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

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

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

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

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

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

Source
def times(x: Int, y: Int): Int

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

Source
def toDouble(x: Int): Double

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

Источник
def toFloat(x: Int): Float

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

Источник
def toInt(x: Int): Int

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

Источник
def toLong(x: Int): Long

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

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

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

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

Источник
def zero: Int

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

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

Источник
implicit override def mkNumericOps(lhs: Int): IntegralOps

Классы-предки Integral -> Numeric
Унаследовано от Integral

Источник
implicit def mkOrderingOps(lhs: Int): 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/Numeric$$IntIsIntegral$.html

Spec-Zone.ru

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