我们如何比较算术运算的结果是NaN还是无穷大?

Bij*_*ose 3 c# double nan infinity

double SampleInterval = (PopulationValue - valueOfSignItems) / (SampleSize - noOfSignItems);
Run Code Online (Sandbox Code Playgroud)

如果我的除数= 0,则sampleInterval将为bcom无穷大,如果被除数和除数均为= 0,则为= NaN

我需要在SampleInterval = infinity时执行我的代码,并在SampleInterval = NaN时在另一个上下文中执行.怎么可能.. ?? 任何人都可以告诉我如何将无效值与无穷大或NaN进行比较.

Ben*_*ann 6

您必须使用Double.IsInfinity()和Double.IsNaN()方法.

if (Double.IsInfinity(SampleInterval))
{
  //TODO
}
if (Double.IsNaN(SampleInterval))
{
  //TODO
}
Run Code Online (Sandbox Code Playgroud)

不要直接与Double.NaN比较,它总是返回false.