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 FloatSize4 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 FloatPrecisionFloat 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 DoubleSize8 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 DoublePrecisionDouble Precision after decimal is 2.345678432433564
4) double的默认值为0.0d。
5) double基本上用于表示双精度浮点数。
6) double是表示十进制数字的默认数据类型。
7)建议使用double作为精确值(即小数点右边15位)。
以上是 Java-浮点数和双精度数之间的区别 的全部内容, 来源链接: utcz.com/z/345277.html