private String getSizePercent(long current, long total) {
double percent = (double)current / total;
DecimalFormat df = new DecimalFormat("00.00"); //保留2位小数,带前导零
df.setMaximumFractionDigits(2); //不采取四舍五入。
df.setGroupingSize(0);
df.setRoundingMode(RoundingMode.FLOOR);
return df.format(percent * (double)100) + "%";
}
注:
DecimalFormat df1 = new DecimalFormat("0.0"); //保留1位小数,带前导零
DecimalFormat df2 = new DecimalFormat("#.#"); //保留1位小数,可以不带前导零
DecimalFormat df3 = new DecimalFormat("000.00"); //保留2位小数,带前导零
DecimalFormat df4 = new DecimalFormat("###.##"); //保留2位小数,可以不带
Java精确计算百分比
本文介绍了一种使用Java进行精确的小数计算方法,通过DecimalFormat类格式化百分比,确保结果保留两位小数且不采用四舍五入的方式。文中提供了具体的代码实现,并对比了不同格式设置的区别。
717

被折叠的 条评论
为什么被折叠?



