Java数据类型教程 - Java double数据类型double数据类型使用64位来存储浮点数。double值也称为双精度浮点数。
它可以表示数量小到4.9 x 10-324和大到1.7 x 10308大小。
它可以是正的或负的。
所有实数被称为双精度字面量。双精度字面量可以可选地以d或D结尾,例如1.27d。
后缀d或D在双精度字面量中是可选的。
19.7和19.7d代表相同的双精度字面量。
双精度字面量双精度字面值可以用以下两种格式表示:
十进制数字格式科学计数法十进制数字格式的双精度字面值示例如下: double d1 = 8D;
double d1 = 8D ;
double d2 = 8.;
double d3 = 8.0;
double d4 = 8.D;
double d5 = 78.9867;
double d6 = 45.0;
8是一个int字面量,而8D,8和8.0是双精度字面量。
我们还可以使用科学记数法表达双精度字面量。
double d1 = 32.5E-1;
double d2 = 0.325E+1;
double d3 = 0.325E1;
double d4 = 0.0325E2;
double d5 = 0.0325e2;
double d6 = 32.5E-1D;
double d7 = 0.325E+1d;
double d8 = 0.325E1d;
double d9 = 0.0325E2d;
注意double数据类型定义了两个零,两个无穷大和一个NaN。它们由Double类中的常量表示。
下表列出了这些常量及其含义。
常量含义Double.POSITIVE_INFINITY正无穷大类型doubleDouble.NEGATIVE_INFINITY负无穷大类型doubleDouble.NaN不是类型double的数量Double.MAX_VALUE可以在双变量中表示的最大正值。这等于1.7 x 10308。Double.MIN_VALUE大于零的最小正值,可以在双变量中表示。 这等于4.9 x 10-324。可以将所有整型类型(int,long,byte,short,char)和float的值分配给双精度数据类型的变量,而不使用显式强制转换。
int num1 = 15;
double salary = num1;
salary = 12345;
double bigNum = Double.MAX_VALUE;
bigNum = 1234L;
double justAChar = "A";
double dInf = Double.POSITIVE_INFINITY;
double dNan = Double.NaN;
在将double值分配给任何整数数据类型(int,long,byte,short或char)的变量之前,必须将其转换为整数类型。