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

大数不以科学计数法表示

作者: 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