浮点类型表示有小数部分的数字,Java语言中浮点类型分为单精度浮点类型(float)和双精度浮点类型(double)。它们具有不同的取值范围,如表1所示。
表1 浮点型数据类型
数据类型 |
内存空间(8位等于1字节) |
取值范围 |
float |
32位 |
1.4E-45~3.4028235E38 |
double |
64位 |
4.9E-324~1.7976931348623157E308 |
Java语言默认使用double双精度类型的浮点数,就像int是默认的整数类型一样。如果将实数赋值给float类型的变量,则需要在实数末尾添加F或f作为后缀,否则被认为是double类型数值。
例 定义浮点类型变量,代码如下:
double sum=3799.39; // 双精度是默认浮点类型
double length=156.34D; // 双精度可以添加D标识
float price=
double length1=156.34d; // 双精度可以添加d标识
float price1=
System.out.println("sum="+sum); //输出结果为:sum=3799.39
System.out.println("length="+length); //输出结果为:length=156.34
System.out.println("price="+price); //输出结果为:price=34.5
System.out.println("length1="+length1); //输出结果为:length1=156.34
System.out.println("price1="+price1); //输出结果为:price1=34.5
上面的代码,在控制台中输出的结果如图1所示。
图1 控制台运行结果
说明:在声明double类型的数据时,可以使用后缀“d”或“D”来明确表明这是一个double类型数据。但是加不加“D”或“d”没有硬性规定,可以加也可以不加,不过声明float型变量时如果不加“F”或“f”,编译器会认为是double类型而出错。