我想做的是接受用户给定的输入(操作数)并将当前数字四舍五入到操作数的小数位数。例如,如果我在运行的计算器程序中当前的数字是 15.44876,并且用户输入是 2,我希望返回值是 15.45,或者至少是 15.44。
public double round(double operand){
this.answer = Math.round(this.answer, operand);
return this.answer;
我知道上面的代码不正确,但它只是一个占位符,因为我对此感到非常困惑。
最佳答案
您可以乘以适当的 10 次方,舍入,然后除以 10 的相同次方。此方法假设数字在范围内,因此不会出现溢出问题。
public double round(double value, int places) {
final double scale = Math.pow(10.0, places);
return Math.round(value * scale) / scale;
}
如果溢出可能是一个问题,还有其他方法。
关于java - 如何将数字四舍五入到用户给定的小数位数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60121047/