System.out.println(f)
输出8.3454544E7,即8.3454544*10的7次方
这和数值范围为 1.4013E-45 ~ 3.4028E+38不冲突啊,但是float类型就会存在精度丢失的问题,如果你想要的精度无损,建议使用BigDecimal
如:
BigDecimal f = new BigDecimal("3.141592653")
System.out.println(f)
java中的float类型
.浮点类型
1) 与整数类型一样,同样有固定的表述范围和字段长度,且不受具体的 *** 作系统的影响,保证了Java的跨平台性
2) Java语言中,浮点类型有两种表现形式,分别是:
a. 十进制数形式, 如3.14
b. 科学计数法,如,3.14e2, 3.14e-2, -3.14E2
3) Java语言中,默认的浮点数类型是double,声明float类型的时候,后面必须添加字母f或者F,如3.14F,3.14f
4) Java中两种浮点类型的表述范围:
float:4字节(32bit),IEEE 754. 取值范围:
[-3.40282346638528860e+38 , -1.40129846432481707e-45] ∪ [1.40129846432481707e-45 ~ 3.40282346638528860e+38] 。
double: 8字节(64bit) ,IEEE 754. 取值范围:
[-1.79769313486231570e+308,-4.94065645841246544e-324] ∪ [4.94065645841246544e-324,1.79769313486231570e+308] 。
扩展资料
基本数据类型的特点,位数,最大值和最小值。
1、
基本类型:short 二进制位数:16
包装类:java.lang.Short
最小值:Short.MIN_VALUE=-32768 (-2的15此方)
最大值:Short.MAX_VALUE=32767 (2的15次方-1)
2、
基本类型:int 二进制位数:32
包装类:java.lang.Integer
最小值:Integer.MIN_VALUE= -2147483648 (-2的31次方)
最大值:Integer.MAX_VALUE= 2147483647 (2的31次方-1)
3、
基本类型:long 二进制位数:64
包装类:java.lang.Long
最小值:Long.MIN_VALUE=-9223372036854775808 (-2的63次方)
最大值:Long.MAX_VALUE=9223372036854775807 (2的63次方-1)
4、
基本类型:float 二进制位数:32
包装类:java.lang.Float
最小值:Float.MIN_VALUE=1.4E-45 (2的-149次方)
最大值:Float.MAX_VALUE=3.4028235E38 (2的128次方-1)
5、
基本类型:double 二进制位数:64
包装类:java.lang.Double
最小值:Double.MIN_VALUE=4.9E-324 (2的-1074次方)
最大值:Double.MAX_VALUE=1.7976931348623157E308 (2的1024次方-1)
参考资料:Java官网-Java教程
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)