解析DecimalFormat以避免科学记数法

时间:2013-07-30 21:45:15

标签: java android

我需要解析一个数字,String value =“15000000”

Public static String FormatValue(value){
    double formatedValue= Double.parseDouble(value);        

    DecimalFormatSymbols dfs = new DecimalFormatSymbols();
    dfs.setDecimalSeparator('.');       
    dfs.setGroupingSeparator(' ');
    DecimalFormat df = new DecimalFormat("# ### ### ### ###.##", dfs);
    df.format(valorAformatear);
    return  String.valueOf(formatedValue);  
}   

我需要返回值为“15 000 000.00”但是,当我调用方法返回“7.5E7”时,我该如何避免科学记数法?

1 个答案:

答案 0 :(得分:3)

您忽略了format方法的返回,而是使用String将正常转换返回到String.valueOfformat方法不会更改数字;它返回其格式化的表示。此外,如果数字足够大,String.valueOf将使用科学记数法。

只需返回format返回的内容。