因此有一种NaN方法,但除以零会产生无穷大或负无穷大.
Infinity有一种方法(也是正无穷大和负无穷大).
我想要的是IsARealNumber函数,当值是可表达的数字时返回true.
显然我可以写自己的......
public bool IsARealNumber(double test)
{
if (double.IsNaN(test)) return false;
if (double.IsInfinity(test)) return false;
return true;
}
Run Code Online (Sandbox Code Playgroud)
但似乎我不应该这样做.
要将其添加为扩展方法,它必须是静态类的静态成员.
public static class ExtensionMethods
{
public static bool IsARealNumber(this double test)
{
return !double.IsNaN(test) && !double.IsInfinity(test);
}
}
Run Code Online (Sandbox Code Playgroud)