FloatingPointNumerics 类

定义

用于处理浮点数的帮助程序例程

public class FloatingPointNumerics
type FloatingPointNumerics = class
继承
FloatingPointNumerics

注解

浮点比较代码基于这篇优秀的文章: https://www.cygnus-software.com/papers/comparingfloats/comparingfloats.htm

“ULP”表示最后一个位置中的单位,在此库的上下文中,是指两个相邻浮点数之间的距离。 IEEE 浮点数只能表示自然数的有限子集,小数的准确度更高,极大型数字的准确度较低。

如果允许比较偏差的“2 ulps”,则表示允许这些值偏离最多 2 个相邻浮点值,对于小数,其偏差可能低至 0.0000001,对于大数则为 10.0。

方法

AreAlmostEqualUlps(Double, Double, Int64)

比较两个双精度浮点值是否相等

AreAlmostEqualUlps(Single, Single, Int32)

比较两个浮点值是否相等

ReinterpretAsDouble(Int64)

将整数值的内存内容重新解释为双精度浮点值

ReinterpretAsFloat(Int32)

将整数的内存内容重新解释为浮点值

ReinterpretAsInt(Single)

将浮点值的内存内容重新解释为整数值

ReinterpretAsLong(Double)

将双精度浮点值的内存内容重新解释为整数值

适用于