我正在寻找一些java math.round公式,它可以转换为最近的5000值。 假设值为15555,则应转换为20000.如果值为18555,则还应转换为20000(因为这应该给出下一个5000范围)。 到目前为止,我正在尝试这个:
Math.round(value/ 5000.0) * 5000.0)
但是如果值是15555,这给了我15000.我希望这是20000
答案 0 :(得分:6)
您正在寻找Math.ceil()
,而不是Math.round()
Math.ceil(value/ 5000.0) * 5000.0
进行比较
答案 1 :(得分:2)
我可能更喜欢使用基本整数运算(假设value
是非负整数):
int remainder = value % 5000;
int result = remainder == 0 ? value : value - remainder + 5000;