BigDecimal a=new BigDecimal(1/100));//a=0
BigDecimal b=new BigDecimal(1).divide(new BigDecimal(100));//b=0.01
BigDecimal a=new BigDecimal(49999.99);//49999.9899999999979627318680286407470703125
BigDecimal c=BigDecimal.valueOf(49999.99);//49999.99
BigDecimal b=new BigDecimal("49999.99");//49999.99
总结如下:
1.当使用浮点数49999.99构造BigDecimal时,最好转成字符串"49999.99"构造或者用valueOf方法
2.当使用整数构造BigDecimal时,能正常显示
本文探讨了BigDecimal类在Java中处理高精度数值时的不同构造方法及其潜在的问题。通过实例对比了直接使用浮点数、字符串及valueOf方法构造BigDecimal的区别,强调了最佳实践。
495

被折叠的 条评论
为什么被折叠?



