float(C# 参考)

float 关键字表示存储 32 位浮点值的简单类型。下表显示了 float 类型的精度和大致范围。

类型 大致范围 精度 .NET Framework 类型
float -3.4 × 1038 到 +3.4 × 1038 7 位 System.Single

文本

默认情况下,赋值运算符右侧的实数被视为 double。因此,应使用后缀 f 或 F 初始化浮点型变量,如以下示例中所示:


float x = 3.5F;

如果在以上声明中不使用后缀,则会因为您尝试将一个 double 值存储到 float 变量中而发生编译错误。

转换

可在一个表达式中兼用数值整型和浮点型。在此情况下,整型将转换为浮点型。根据以下规则计算表达式:

  • 如果其中一个浮点型为 double,则表达式的计算结果为 doublebool(在关系表达式或布尔表达式中)。

  • 如果表达式中不存在 double 类型,则表达式的计算结果为 floatbool(在关系表达式或布尔表达式中)。

浮点表达式可以包含下列值集:

  • 正零和负零

  • 正无穷和负无穷

  • 非数字值 (NaN)

  • 有限的非零值集

有关这些值的更多信息,请参见 IEEE 网站上的“IEEE Standard for Binary Floating-Point Arithmetic”(二进制浮点算法的 IEEE 标准)。

在下面的示例中,包含 intshortfloat 类型的数学表达式得到一个 float 结果。(请记住 floatSystem.Single 类型的别名。)请注意,表达式中没有 double

class FloatTest 
{
    static void Main() 
    {
        int x = 3;
        float y = 4.5f;
        short z = 5;
        var result = x * y / z;
        Console.WriteLine("The result is {0}", result);
        Type type = result.GetType();
        Console.WriteLine("result is of type {0}", type.ToString());
    }
}
/* Output: 
  The result is 2.7
  result is of type System.Single //'float' is alias for 'Single'
 */

C# 语言规范

有关详细信息,请参阅 C# 语言规范。该语言规范是 C# 语法和用法的权威资料。

请参阅

Single

C# 参考

C# 编程指南

强制转换和类型转换(C# 编程指南)

C# 关键字

整型表(C# 参考)

内置类型表(C# 参考)

隐式数值转换表(C# 参考)

显式数值转换表(C# 参考)