Java零基础15-Java的浮点类型

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/shilishili/article/details/88379618

阅读完后:

  • 浮点类型介绍【掌握】
  • float、double 的使用【掌握】

前言

我们开始来学习 Java 基本类型的浮点类型浮点类型表示小数部分的数值,用来存储小数的数值,浮点类型也可以存储范围较大的整数。浮点类型都是有符号的,意味着它们既可以存储正数,也可以存储负数。例如:3.1415926、10.89、-0.13 有小数部分而且它们默认情况下都是 double 类型。

浮点类型

浮点类型下的数据类型有 2 种,这两种浮点类型为:float 和 double,它们分别表示单精度和双精度浮点数。
double 精度要高于 float,误差更小,但 double 占用的内存空间比 float 要多。
Java 语言的浮点类型默认是 double 类型,例如,0.0,3.14 默认情况下都是 double 类型。

下面表格是浮点类型下的 2 种数据类型:

数据类型 占用内存空间 取值范围
float 32位(bit)或 4个字节(byte) 1.4E-45~3.4028235E38
double 64位(bit)或 8个字节(byte) 4.9E-324~1.7976931348623157E308

float

float 可称为单精度浮点数,它占用32位(4个字节),取值范围为最小值为 1.4E-45,最大值为 3.4028235E38
float 不能表示精确的值,常用于精度不高时,速度快,占空间较小,用于需要存储大量数据。

若要使用 float 类型,必须在小数数值尾部添加 “ F ” 或 “ f ” 后缀来表示 float 类型(例如,3.14F)。如果不添加后缀,系统会认为是默认类型 double 类型,则编译器会报错。

示例代码如下:

float f1;
float myFloat = 3.14159265358979323846F;	// 尾部添加 “F”
System.out.println(myFloat);				// 输出:3.1415927

double

double 可称为双精度浮点数,它占用64位(8个字节),取值范围为最小值为 4.9E-324,最大值为 1.7976931348623157E308

double 在开发中是最常用的浮点类型,常用于精度要求比较高的地方,比如数学函数。在默认情况下,浮点类型的数据默认是 double, 而且 Java 类库中所有数学函数都是用 double 类型。double 类型的数值精度要高于 float 类型,误差更小,因此浮点类型通常使用 double 类型。

小数数值可以使用后缀 “ D ” 或 “ d ” 来表示 double 类型数值(例如,3.14D),由于小数数值默认数据类型为 double,所以小数数值的后缀可以加也可以不加。

示例代码如下:

double d1 = 3.14159265358979323846;		// 没有加后缀
double d2 = 3.14159265358979323846D;	// 加后缀 D
System.out.println(d1);  				// 输出:3.141592653589793
System.out.println(d2);  				// 输出:3.141592653589793

下面的代码整理了浮点类型变量的定义,示例代码如下:

double myDouble1 = 3.14159265358979323846;      // 没有“D”后缀
double myDouble2 = 3.14159265358979323846D;     // 有“D”后缀
System.out.println(myDouble1);                  // 输出:3.141592653589793
System.out.println(myDouble2);                  // 输出:3.141592653589793

float myFloat = 3.14159265358979323846F;        // “F”后缀必须存在
System.out.println(myFloat);                    // 输出:3.1415927

在本章我们学习了:

  • 浮点类型表示有小数部分的数值
  • 浮点类型分为:float、double
  • double 比 float 精度要高
  • 最常用的浮点类型是 double
  • 浮点类型默认类型为 double

接下来,我们开始学习 Java的字符类型:Java零基础16-Java的字符类型

猜你喜欢

转载自blog.csdn.net/shilishili/article/details/88379618