在java中,如何将十进制数的格式设置为最多两个小数点?
可能重复:在java中,如何将十进制数的格式设置为最多两个小数点?,java,bigdecimal,number-formatting,Java,Bigdecimal,Number Formatting,可能重复: 假设在一个变量中,我有一个像3.1426384473这样的十进制数,但我想要3.14。现在我如何格式化十进制数,最多两个小数点,如上面的例子 公共静态双循环(双值,整数位){ public static double round(double value, int places) { if (places < 0) throw new IllegalArgumentException(); long factor = (long) Math.pow(10,
假设在一个变量中,我有一个像3.1426384473这样的十进制数,但我想要3.14。现在我如何格式化十进制数,最多两个小数点,如上面的例子
公共静态双循环(双值,整数位){
public static double round(double value, int places) {
if (places < 0) throw new IllegalArgumentException();
long factor = (long) Math.pow(10, places);
value = value * factor;
long tmp = Math.round(value);
return (double) tmp / factor;
}
如果(位置<0)抛出新的IllegalArgumentException();
长因子=(长)数学功率(10位);
值=值*系数;
长tmp=数学四舍五入(值);
返回(双)tmp/系数;
}
试试这个
DecimalFormat df = new DecimalFormat("#.##");
df.format(3.1426384473);
或者如果你只是想打印,那么你也可以用这个
System.out.printf("%.2f",d); //d is your number
双pi=3.1426384473
System.out.printf(“%.2f”,π) 有这么多其他的方法可以做,我认为谷歌是伟大的…是不是你可以用一个