C#中的Single.IsNegative()方法返回一个值,该值指示指定的数字是否计算为负无穷大。
语法如下-
public static bool IsNegativeInfinity (float val);
上面的参数val是单精度浮点数。
现在让我们看一个例子-
using System;
public class Demo {
public static void Main() {
float f1 = 5.0f/0.0f;
float f2 = 0.0f/0.0f;
Console.WriteLine("Value1 = "+f1);
Console.WriteLine("Hashcode for Value1 = "+f1.GetHashCode());
Console.WriteLine("TypeCode for Value1 = "+f1.GetTypeCode());
Console.WriteLine("Is Value1 value is positive or negative infinity? = "+Single.IsInfinity(f1));
Console.WriteLine("Is Value1 NaN? = "+Single.IsNaN(f1));
Console.WriteLine("Is Value1 a negative infinity? = "+Single.IsNegativeInfinity(f1));
Console.WriteLine("\nValue2 = "+f2);
Console.WriteLine("Hashcode for Value2 = "+f2.GetHashCode());
Console.WriteLine("TypeCode for Value2 = "+f2.GetTypeCode());
Console.WriteLine("Is Value2 value is positive or negative infinity? = "+Single.IsInfinity(f2));
Console.WriteLine("Is Value2 NaN? = "+Single.IsNaN(f2));
Console.WriteLine("Is Value2 a negative infinity? = "+Single.IsNegativeInfinity(f2));
}
}输出结果
这将产生以下输出-
Value1 = ∞ Hashcode for Value1 = 2139095040 TypeCode for Value1 = Single Is Value1 value is positive or negative infinity? = True Is Value1 NaN? = False Is Value1 a negative infinity? = False Value2 = NaN Hashcode for Value2 = -4194304 TypeCode for Value2 = Single Is Value2 value is positive or negative infinity? = False Is Value2 NaN? = True Is Value2 a negative infinity? = False
现在让我们来看另一个示例-
using System;
public class Demo {
public static void Main() {
float f1 = -25.0f/0.0f;
float f2 = Single.MinValue;
Console.WriteLine("Value1 = "+f1);
Console.WriteLine("Hashcode for Value1 = "+f1.GetHashCode());
Console.WriteLine("TypeCode for Value1 = "+f1.GetTypeCode());
Console.WriteLine("Is Value1 value is positive or negative infinity? = "+Single.IsInfinity(f1));
Console.WriteLine("Is Value1 NaN? = "+Single.IsNaN(f1));
Console.WriteLine("Is Value1 a negative infinity? = "+Single.IsNegativeInfinity(f1));
Console.WriteLine("\nValue2 = "+f2);
Console.WriteLine("Hashcode for Value2 = "+f2.GetHashCode());
Console.WriteLine("TypeCode for Value2 = "+f2.GetTypeCode());
Console.WriteLine("Is Value2 value is positive or negative infinity? = "+Single.IsInfinity(f2));
Console.WriteLine("Is Value2 NaN? = "+Single.IsNaN(f2));
Console.WriteLine("Is Value2 a negative infinity? = "+Single.IsNegativeInfinity(f2));
}
}输出结果
这将产生以下输出-
Value1 = -∞ Hashcode for Value1 = -8388608 TypeCode for Value1 = Single Is Value1 value is positive or negative infinity? = True Is Value1 NaN? = False Is Value1 a negative infinity? = True Value2 = -3.402823E+38 Hashcode for Value2 = -8388609 TypeCode for Value2 = Single Is Value2 value is positive or negative infinity? = False Is Value2 NaN? = False Is Value2 a negative infinity? = False