我的Sting值包含在指数
中class round{
public static void main(String args[]){
String a ="2.4545776339999877E7";
double roundOff = Math.round(a);
System.out.println(roundOff);
}
}
所以我想要最多5个小数vaue。怎么办呢?
答案 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));