Java中整数的数学“舍入”
我需要取一个long
并将其值四舍五入到最近的10位。因此:
If the # is: Then it should become:
==============================================
243 240
288485 288480
6 0
107 100
1009 1000
1019 1010
我知道RoundingMode
可以或许在这里帮助我,但我能找到的所有例子都使用小数,而不是整数。有什么想法吗
# 1 楼答案
使用模
例如:
其他方式:(取自重复问题)
# 2 楼答案
除以10(243/10=24.3)将其放入整数中,乘以10。(24*10 = 240) 对所有值执行此操作,您应该具有正确的值
# 3 楼答案
您可以通过乘法和除法运算来实现这一点。整数除法将根据需要进行取整:
例如,如果输入为1024,则除法使中间值为102(因为实际值为102.4,被截断以长格式存储),乘法得到1020
您也可以使用一种方法,即减去单位数字(模)的值,这是艾尚的答案中建议的