float(C# 参考)
更新:2007 年 11 月
float 关键字表示存储 32 位浮点值的简单类型。下表显示了 float 类型的精度和大致范围。
类型 |
大致范围 |
精度 |
.NET Framework 类型 |
---|---|---|---|
float |
±1.5 × 10-45 到 ±3.4 × 1038 |
7 位 |
文本
默认情况下,赋值运算符右侧的实数被视为 double。因此,应使用后缀 f 或 F 初始化浮点型变量,如以下示例中所示:
float x = 3.5F;
如果在以上声明中不使用后缀,则会因为您试图将一个 double 值存储到 float 变量中而发生编译错误。
转换
可在一个表达式中兼用数值整型和浮点型。在此情况下,整型将转换为浮点型。根据以下规则计算表达式:
浮点表达式可以包含下列值集:
正零和负零
正无穷和负无穷
非数字值 (NaN)
有限的非零值集
有关这些值的更多信息,请参见 IEEE 网站上的“IEEE Standard for Binary Floating-Point Arithmetic”(二进制浮点算法的 IEEE 标准)。
示例
在下面的示例中,包含 int、short 和 float 类型的数学表达式得到一个 float 结果。(请记住 float 是 System.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# 语言规范中的以下各章节:
4.1.6 浮点型
6.2.1 显式数值转换