在Java中最多五位小数?

时间:2014-05-19 12:02:40

标签: java

我的Sting值包含在指数

class round{    
    public static void main(String args[]){
        String a ="2.4545776339999877E7";
        double roundOff = Math.round(a);
        System.out.println(roundOff);
    }
}

所以我想要最多5个小数vaue。怎么办呢?

2 个答案:

答案 0 :(得分:1)

如果你只想从这个浮点值输出(或得到一些String),你可以这样做:

double val = Double.valueOf(a);
String str = String.format("%.5f", val);
System.out.println (str);

否则,如果你真的想在整数部分之后得到5个精度符号的双倍,你可以写下以下内容:

double val = ... // the same as in the previous example
double val5Signs = Math.floor(val * 1e5) / 1e5;

答案 1 :(得分:0)

您还可以将Java Decimal-Formatter用于输出目的:

double input = Double.valueOf(a);
DecimalFormatSymbols symbol = DecimalFormatSymbols.getInstance();
symbol.setDecimalSeparator('.');
System.out.println(new DecimalFormat("#0.00000", symbol).format(input));
相关问题