首页
学习
活动
专区
圈层
工具
发布

C# 浮点数 double 的 IsFinite IsNormal IsRealNumber 分不清楚

请大家根据自己的业务逻辑选择正确的方法 IsNormal 是否正规数。在开始介绍正规数之前,需要继续聊一下次正规数 次正规数 为什么要有次正规数呢?...最小正正常数(正规数)约 2.2250738585072014E-308,此后再变小会进入次正规区间,• 次正规区间的最小正值是 double.Epsilon ≈ 4.94E-324 计算结果 计算结果如下 IsNormal...True NaN : False ∞ : False -∞ : False Epsilon : True Math.E : False 可见 IsNormal...和 IsSubnormal 都不包含 0 和无穷和无效数 FAQ 能否用 IsNormal 判断给定数值是否有效?...我能想到的是为了提升性能,对于很多 CPU 来说,计算次正规数需要进入慢分支,判断进入了次正规数就直接赋零,可以提升一些计算性能 代码 以下是我的测试代码 Console.WriteLine($"IsNormal

9010
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到
    领券