我一直在用Java尝试以下代码:
导入Java.math.*;
公共类三级
publicstaticvoidmain (字符串[ ] args ) {
//create a BigDecimal object
BigDecimal bg;
//create a浮动对象
浮动f;
float f2=35912062;
BG=newbigdecimal(35912062;
//assigntheconvertedvalueofbgtof
f=bg.floatValue (;
stringstr=' float value of ' BG ' is ' f;
BG=newbigdecimal(f;
stringstr2=' bigdecimal value of ' BG;
//打印f value
system.out.println(str;
system.out.println(str2;
system.out.println(35912062f;
system.out.println(F2;
}
}
所以,以下是我得到的输出:
浮动值of 35912062 is 3.5912064 e 7
BigDecimal value of 35912064
3.5912064E7
3.5912064E7
表示浮动的包含范围。 3.40282346638528860e 38
这让我很困惑。
提供说明的链接会有帮助。
编辑:
假设用25912062代替35912062。 25912062的输出是25912062。 但是35912062的输出是35912064。 为什么会这样呢?