方法一:String的format方法(推荐)
double f = 1000/10d;
System.out.println(String.format("%.2f", f));
方法二:DecimalFormat的format方法
double f = 1000/10d;
DecimalFormat df = new DecimalFormat("#.00");
System.out.println(df.format(f));
方式三:java.math.BigDecimal
public static String format1(double value) {
BigDecimal bd = new BigDecimal(value);
bd = bd.setScale(2, RoundingMode.HALF_UP);
return bd.toString();
}
方式四:java.text.NumberFormat
public static String format3(double value) {
NumberFormat nf = NumberFormat.getNumberInstance();
nf.setMaximumFractionDigits(2);
/*
* setMinimumFractionDigits设置成2
* 如果不这么做,那么当value的值是100.00的时候返回100
* 而不是100.00
*/
nf.setMinimumFractionDigits(2);
/*
* 如果想输出的格式用逗号隔开,可以设置成true
*/
nf.setGroupingUsed(false);
return nf.format(value);
}