Spec-Zone.ru › Scala 3.2

Объект Equiv.Double

Исходный код

объект Double

Equiv для Double.

Надтипы
класс Object
трайт Matchable
класс Any
Тип объекта
Double.type

Классы

Исходный код
объект IeeeEquiv extends IeeeEquiv

Компаньон класс

Исходный код
трайт IeeeEquiv extends Equiv[Double]

Эквивалентность для Double , которая соответствует спецификациям IEEE.

Поскольку поведение Double , определённое в спецификации IEEE, не соответствует требованиям отношения эквивалентности для NaN (оно не рефлексивно), для Double определены две эквивалентности: StrictEquiv, которая рефлексивна, и IeeeEquiv, которая соответствует спецификации IEEE и операциям с плавающей точкой, определённым в scala.math.

Эта эквивалентность может быть предпочтительнее в числовых контекстах.

См. также

StrictEquiv

Компаньон объект

Исходный код
объект StrictEquiv extends StrictEquiv

Компаньон класс

Исходный код
трайт StrictEquiv extends Equiv[Double]

Эквивалентность для Double , которая рефлексивна (все NaN считаются эквивалентными), и считает -0.0 и 0.0 не эквивалентными; она ведет себя так же, как java.lang.Double.compare.

Поскольку поведение Double , определённое в спецификации IEEE, не соответствует требованиям отношения эквивалентности для NaN (оно не рефлексивно), для Double определены две эквивалентности: StrictEquiv, которая рефлексивна, и IeeeEquiv, которая соответствует спецификации IEEE и операциям с плавающей точкой, определённым в scala.math.

Эта эквивалентность может быть предпочтительнее для коллекций.

См. также

IeeeEquiv

Компаньон объект

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/math/Equiv$$Double$.html

Spec-Zone.ru

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