Java零基础-浮点型

浮点型数据类型

  • float 单精度【4个字节】
  • double 双精度【8个字节,精度较高】

Java 语言中的”浮点型字面值“被默认当作 double 类型来处理

double 的精度太低【相对来说】,不适合做财务软件。

财务涉及到钱的问题,要求的精度较高,所以 SUN 在基础SE类库中为程序员准备了精确度更高的类型,属于引用数据类型:java.math.BigDecimal

其中:

  • SE 类库字节码:C:\Program Files\Java\jdk1.8.0_101\jre\lib\rt.jar
  • SE 类库源码:C:\Program Files\Java\jdk1.8.0_101\src.zip

类型转换

  1. 字面值为 double类型,赋值类型也为 double类型
1
2
3
// 3.0 是 double类型,所以不存在类型转换
double d = 3.0;
System.out.println(d);
  1. 字面值为 double类型,赋值类型为 float类型
1
2
3
4
5
6
7
8
// 3.1 是 double类型,大容量向小容量转换需要进行处理
// float f = 5.1;

// 第一种办法:强制类型转换
// float f = (float)5.1;
// 第二种办法:没有类型转换
float f = 5.1f;
System.out.println(f);