Java-浮点数和双精度数之间的区别

1)Java中的float数据类型

1) float是Java中的一种数据类型(换句话说,它是具有特殊含义的关键字)。

2) float在内存中占用4个字节(即32位)(换句话说,我们可以表示(+,-)3.40282347E + 38F Numbers)。

示例1:这里我们正在检查float的大小。

class FloatSize {

public static void main(String[] args){

float a ;

System.out.println(Float.SIZE/8 + " BYTES");

}

}

输出结果

D:\Java Articles>java FloatSize

4 BYTES

3)换句话说,float是单精度浮点十进制数(即,我们可以表示7个十进制精度的位,或者简单地说,我们可以在十进制后取7位数字)。

范例2:

class FloatPrecision {

public static void main(String[] args){

float a = 2.3456784f ;

System.out.println("Float Precision after decimal is " + a);

}

}

输出:

D:\Java Articles>java FloatPrecision

Float Precision after decimal is 2.3456783

4) float的默认值为0.0f。

5) float基本上用于在大型浮点十进制数数组中节省内存(更好的内存利用率)。

6) float不是代表十进制数字的默认数据类型。

7)建议将浮点数用于精确值(即小数点右边的7位数字)。

2)Java中的double数据类型

1) double是Java中的一种数据类型(或者换句话说,它是具有特殊含义的关键字)。

2) double在内存中占用8个字节(即64位)(换句话说,我们可以表示(+,-)±1.79769313486231570E + 308数字)。

示例1:这里我们正在检查float的大小。

class DoubleSize {

public static void main(String[] args){

double a ;

System.out.println(Double.SIZE/8 + " BYTES");

}

}

输出结果

D:\Java Articles>java DoubleSize

8 BYTES

3)换句话说,double是双精度浮点十进制数(即,我们可以表示15位小数精度,或者简单地说,我们可以在小数点后取15位数字)。

范例2:

class DoublePrecision {

public static void main(String[] args){

double a = 2.345678432433564 ;

System.out.println("Double Precision after decimal is " + a);

}

}

输出结果

D:\Java Articles>java DoublePrecision

Double Precision after decimal is 2.345678432433564

4) double的默认值为0.0d。

5) double基本上用于表示双精度浮点数

6) double是表示十进制数字的默认数据类型。

7)建议使用double作为精确值(即小数点右边15位)。

以上是 Java-浮点数和双精度数之间的区别 的全部内容, 来源链接: utcz.com/z/345277.html

回到顶部