美文网首页
大数不以科学计数法表示

大数不以科学计数法表示

作者: Shiki | 来源:发表于2014-08-20 21:52 被阅读0次

在java中对于double,如果数据较大的话(或很小的数,即位数较多),会被自动转化为科学计数法。现在我们有几个方法可以让double数据保持一般的形式####

例如:###

      double d = 123456789.123456;
       System.out.println(d);

输出结果为1.23456789123456E8
我们期望的结果应该是123456789.123456


Method 1###

以格式方式输出

      double d = 123456789.123456;
       System.out.println(d);
       DecimalFormat decimalFormat = new DecimalFormat("#,##0.00");
       System.out.println(decimalFormat.format(d));  

Method 2###

使用BigDecimal

      double d = 123456789.123456;
       BigDecimal val=new nextBigDecimal(d);
       System.out.println(val.toPlainString());  

BigDecimal 还自带了stripTrailingZeros去掉末尾的0


相关文章

网友评论

      本文标题:大数不以科学计数法表示

      本文链接:https://www.haomeiwen.com/subject/mjoetttx.html