08_浮点类型_浮点数误差问题

来源:互联网 发布:中国的穆斯林问题 知乎 编辑:程序博客网 时间:2024/06/11 01:49

1.浮点类型

类型 占用存储空间 表述范围 float 4字节 -3.403E38~3.403E38 double 8字节 -1.798E308~1.798E308

float 单精度浮点型,尾数可以精确到7位有效数字

double 双精度浮点型,数值精度为float的两倍;
绝大部分应用程序都用double类型。

2.Java浮点类型常量的两种表示形式

  • 十进制

    3.14
    314.0
    0.314

  • 科学计数法

    314E2:314*10^2->31400
    314e2 : 314*10^2->31400
    314E-2:314*10^-2->3.14

3.Java浮点常数默认类型

浮点类型常数默认类型为double型,若要将其赋给float类型需要在后面加F/f

4.浮点数误差问题

浮点数存在舍入误差,很多数不能精确表示,最好避免使用浮点数

Float f=0.1f;Double d=1.0/10;System.out.println(f==d);//Flase

如果要不产生舍入误差的精确数字计算可以使用BigDecimal

原创粉丝点击