关于JAVA中浮点数据类型的问题,float跟double分别能表示多少位?

float跟double说的这个有效位数指的是小数点之前多少位还是小数点之后多少位,在eclipse中,float型小数点之前打了二十位,小数点之后打了二十位都没有报错
浮点数的精度,指所有岁团的有效数字的位数,例如0.123和12.3的有效数字都是三位。
表示范围则用指数的范围来说明,例如10^-37~ 10^38。

你用的什么版本的eclipse?
我用的也不算很新的版本,eclipse自己告警了。

Version: Juno Service Release 1
Build id: 20120920-0800
给出的解决方案有两个:讲毁尺常量强制转换为float,或者变量类型换成double。

直接用jdk 1.6编译,提示如下:
ThreadDemo.java:14: 可乎余橘能损失精度
找到: double
需要: float
float f = 1234567890987654321.1234567890987654321;
^
1 错误
都是浮点型数据,一衡缓个单精度,稿山一个双咐敬模精度,存储的大小不一样,就像int 和long的区别
你用Float.MAX_VALUE Double.MAX_VALUE看一下就知道了