ava Double: 四舍五入并设置小数点位数
Posted Fight With Me!!!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ava Double: 四舍五入并设置小数点位数相关的知识,希望对你有一定的参考价值。
public static void main(String[] args) { // 1. 先乘后四舍五入, 再除; double d = 62.31060027198647; double d2 = Math.round(d*100)/100.0; System.out.println("通过Math取整后做除法: " + d2); // 2. 通过BigDecimal的setScale()实现四舍五入与小数点位数确定, 将转换为一个BigDecimal对象. //下面这个可行 BigDecimal bd = new BigDecimal(d); BigDecimal bd2 = bd.setScale(2, BigDecimal.ROUND_HALF_UP); System.out.println("通过BigDecimal.setScale获得: " + bd2); // 3. 通过DecimalFormat.format返回String的 DecimalFormat df = new DecimalFormat("#.##"); System.out.println("通过DecimalFormat.format获得: " + df.format(d)); // 4. 通过String.format System.out.println("通过StringFormat: " + String.format("%.2f", d)); }
// 通过Math取整后做除法: 62.31 // 通过BigDecimal.setScale获得: 62.31 // 通过DecimalFormat.format获得: 62.31 // 通过StringFormat: 62.31
个人建议第二种
以上是关于ava Double: 四舍五入并设置小数点位数的主要内容,如果未能解决你的问题,请参考以下文章