Java float数据类型
Java数据类型教程 - Java float数据类型
浮点数据类型
当评估需要分数精度的表达式时,使用浮点数(也称为实数)。
包含小数部分的数字称为实数,例如,3.2,0.114,-1.19等。
Java支持浮点数格式。 Java使用IEEE 754浮点标准存储实数。
有两种类型的浮点类型,float和double,分别表示单精度和双精度数。
它们的宽度和范围如下所示:
名称 | 宽度以位为单位 | 近似范围 |
---|---|---|
double | 64 | 4.9e-324〜1.8e + 308 |
float | 32 | 1.4e-045〜3.4e + 038 |
浮点数据类型
浮点数据类型使用32位来存储浮点数。
浮点数也称为单精度浮点数。它可以表示一个小到1.4×10-45和大到3.4×1038的大小的实数。
该范围仅包括幅度。它可以是正的或负的。
所有以f或F结尾的实数称为浮点文字。浮点文本可以用以下两种格式表示:
- 十进制数字格式
- 科学计数法
浮点字面量
十进制数字格式的浮点文本示例如下:
float f1 = 1F; float f2 = 2.F; float f3 = 3.0F; float f4 = 4.51F; float f5 = 5.0F; float f6 = 56.78f;
在Java中,实数可以使用科学记数法表示为浮点文本。
在科学记数法中,数字32.5×10-1 被写为32.5E-1。作为浮点文本,它可以写作32.5E-1F或32.5E-1f。
所有以下浮点文本表示相同的实数4.25:
4.25F 42.5E-1F 0.425E+1F 0.425E1F 0.0425E2F 0.0425e2F 4.25E0F
float数据类型定义两个零:+ 0.0F(或0.0F)和-0.0F。 + 0.0F和-0.0F都被认为是相等的。
float数据类型定义了两个无穷大:正无穷大和负无穷大。
未定义浮动上的一些操作的结果。例如,将0.0F除以0.0F是不确定的。
不确定的结果由称为NaN(非数字)的float数据类型的特殊值表示。
Java有一个 Float
类,它定义了三个常量,分别表示正数无穷大,负无穷大和浮点数据类型的NaN。
下表列出了这三个浮动常量及其含义。
常量 | 含义 |
---|---|
Float.POSITIVE_INFINITY | float类型的正无穷大 |
Float.NEGATIVE_INFINITY | float类型的负无穷大 |
Float.NaN | 不是类型float的数量 |
Float.MAX_VALUE | 可以在float变量中表示的最大正值。 这等于3.4×10 38 (约)。 |
Float.MIN_VALUE | 大于零的最小正值,可以在float变量中表示。 这等于1.4×10 -45 。 |
所有整型类型(int,long,byte,short和char)的值都可以分配给float数据类型的变量,而不使用显式强制转换。
在将float值分配给任何整数数据类型int,long,byte,short或char的变量之前,必须强制转换该值。
将int和long赋值为float可能会导致精度损失。
更多建议: