码迷,mamicode.com
首页 > 编程语言 > 详细

java 计算溢出

时间:2016-12-10 06:56:28      阅读:227      评论:0      收藏:0      [点我收藏+]

标签:ati   class   截取   span   步骤   val   mil   font   nbsp   

在 java/js 中decimal类型进行计算(累加之类的),计算结果之后还有一切乱七八在的数据,不晓得啥原因。但是解决方案如下:

1. 在java中的解决方案,步骤:

  a. 把decimal的数据转化成double类型:

    double xmz = 0D;

    BigDecimal zxMz = zx.getMz();

    xmz= zxMz==null?0D:zxMz.doubleValue();

  b. 将转化后的double数据,进行计算,之后通过DecimalFormat格式化下:

    java.text.DecimalFormat df = new java.text.DecimalFormat("#.0000");

    df.format(xmz+(zxMz==null?0D:zxMz.doubleValue())));

  c. 最后将DecimalFormat格式化之后的数据,转化成double类型:

    Double.valueOf(df.format(xtj+(zxTj==null?0D:zxTj.doubleValue())));

java.text.DecimalFormat df = new java.text.DecimalFormat("#.0000");
BigDecimal zxMz = zx.getMz();//zx.getMz()这个是我的程序里面通过get获取的数据
double xmz = 0D;
xmz = Double.valueOf(df.format(xmz+(zxMz==null?0D:zxMz.doubleValue())));

2.在js中解决办法:

  用substring,截取

最后,如果能在sql语句中计算,就直接在sql中计算吧,这样可以避免上述的问题  

java 计算溢出

标签:ati   class   截取   span   步骤   val   mil   font   nbsp   

原文地址:http://www.cnblogs.com/MissRabbit/p/6152912.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!