方案一:DecimalFormat(不推荐)
实际使用中发现,有时候会出现小数变成1位而不是两位的情况。一般是出现在待格式化对象本身就只有1位小数时。
方案二:String.format()方法(推荐)
还是推荐使用String.format(),稳定:
double f = 111231.5585;
System.out.println(String.format("%.2f", f));
如果需要float格式的结果的话,保留两位小数后,用Float.parseFloat()转一下得到的Stirng格式的结果就可以了。