浮点型变量/常量

  带小数的数据在Java中称为浮点型,浮点型可以分为float类型和double类型。

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

  float类型又被称作单精度类型,尾数可以精确到7位有效数字,在很多情况下,float类型的精度很难满足需求。而double类型表示这种类型的数值精度约是float类型的两倍,又被称作双精度类型,绝大部分程序都采用double类型。浮点型常量默认类型也是double类型。

Java浮点型常量有两种表现形式

十进制数形式,如:3.14    314    0.314

科学技术法形式,如:314e2  314E2   314E-2

  注意:浮点数是不精确的,一定不能用于比较!因为由于字长有限,浮点数能够精确表示的数是有限的,因而也是离散的。浮点数一般都存在舍入误差,很多数字无法精确表示,其结果只能是接近,但是不等于。二进制浮点数不能精确的表示0.1,0.01,0.001等这样的10的负次幂。并不是所有的小数都可以精确的用二进制浮点数表示。

Java.math包下面的两个有用的类:BigInteger和BigDecimal,这两个类可以处理任意长度的数值。BigInteger实现了任意精度的整数运算。BigDecimal实现了任意精度的浮点数运算。

 

posted @ 2019-06-16 15:42  lazysnail  阅读(70)  评论(0)    收藏  举报