发布网友 发布时间:2022-04-23 13:25
共2个回答
热心网友 时间:2023-10-15 14:12
199999.00*0.015=2999.984999....
所以想输出2999.99
必须这样
先把49变成5
然后才能四舍五入
System.out.println(new java.math.BigDecimal(new Double(199999.00*0.015)).setScale(3,java.math.BigDecimal.ROUND_HALF_UP).setScale(2,java.math.BigDecimal.ROUND_HALF_UP).doubleValue());热心网友 时间:2023-10-15 14:12
不太懂???
你都已经会了不是吗???
b2.setScale(3, BigDecimal.ROUND_HALF_UP).doubleValue(); <---取小数後3位
b2.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); <---取小数後2位
double m , n;
m = Math.round( 2999.985 * 100 );//<--- Math.round()取整数 (*100 进两位)
n = m / 100 ;//<----在这退回两位数
System.out.println("m is : " + m);
System.out.println("n is : " + n);