如何自定义四舍五入的形式

How to customize the form of rounding

我的问题看似简单,但仍然无法解决问题。 我需要自定义 Math.round 舍入格式或其他格式以使其按如下方式工作:

如果数字是 1.6 他应该四舍五入到 1,如果大于或等于 1.7 应该四舍五入到 2.0 。所以对于所有其他带有 # .6 的小数结果 我将 1.6 四舍五入为 2 的方式应四舍五入为 1。

我该怎么做?

谢谢!

您可以编写一个方法,将 double 变量作为输入,returns 基于小数点后第一个数字的整数。例如,您可以将输入转换为 String 并在小数点处定界。然后检查点后的第一个数字是小于还是大于6。

只需这样做:

double threshold = 0.7;
Math.round(x - threshold + 0.5);
Math.floor(x + 0.6);

它可能会解决你的问题。