我想将BigDecimal值舍入到最接近的整数.
我尝试使用Java BigDecimal这个问题的解决方案:舍入到最接近的整数值,但它对我不起作用.
BigDecimal scaled = value.setScale(0, RoundingMode.HALF_UP);
System.out.println(value + " -> " + scaled);
Run Code Online (Sandbox Code Playgroud)
它适用于以下情况:
100.12 -> 100.00
100.44 -> 100.00
100.50 -> 101.00
100.75 -> 101.00
Run Code Online (Sandbox Code Playgroud)
但它失败了
100.47 -> 100 instead of 101.
Run Code Online (Sandbox Code Playgroud)
为什么这段代码不起作用?