double类型的乘法问题


遇到了一个问题,两个double相乘,结果不正确,好长,很奇怪

参考了BigDecimal类的加减乘除(解决double计算精度问题)Java double 相乘的小问题记录

终于解决了问题,下面提供一下代码

1 public static void main(String[] args){
2         BigDecimal a1 = new BigDecimal(454.585);
3         BigDecimal aa = new BigDecimal(0.05);
4         Double dd=a1.multiply(aa).doubleValue();
5         System.out.println( dd);
6     }

  

如果结果还是很长,不正确的话,把 

BigDecimal aa = new BigDecimal(0.05); 改成
BigDecimal aa = new BigDecimal(Double.toString(0.05));

作为一个Java初学者,小小记录一下,希望能够帮到你呀~


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM