gpt4 book ai didi

java - 在 Java 中舍入 .5

转载 作者:搜寻专家 更新时间:2023-11-01 04:05:49 24 4
gpt4 key购买 nike

如何实现一个舍入函数,将除 0.5 或其任何奇数倍以外的所有数字都像往常一样舍入到最接近的整数?

例如:

  • 2.899 将四舍五入为 3.0
  • 2.332 将向下舍入为 2.0
  • 2.5 也将向下舍入为 2.0(而不是 3.0)

最佳答案

您可以按如下方式使用 BigDecimal:

public static double roundHalfDown(double d) {
return new BigDecimal(d).setScale(0, RoundingMode.HALF_DOWN)
.doubleValue();
}

示例:

for (double d : new double[] { 2.889, 2.332, 2.5 })
System.out.printf("%.2f -> %.2f%n", d, roundHalfDown(d));

输出:

2.89  ->  3.00
2.33 -> 2.00
2.50 -> 2.00

关于java - 在 Java 中舍入 .5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27450766/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com