如何在android中计算最接近的100?
我已经为File Manager移动应用程序实现了一个条形图。我必须在Y轴上显示已使用的空间 有没有办法计算最接近的最大值的百分之几?这应该可以:如何在android中计算最接近的100?,android,Android,我已经为File Manager移动应用程序实现了一个条形图。我必须在Y轴上显示已使用的空间 有没有办法计算最接近的最大值的百分之几?这应该可以: int size = . . .; int nearestHundred = 100 * ((size + 50) / 100); 说明:除以100将截断为小于或等于商的最大整数。乘以100可将商缩放回所需单位。通过在除法之前加上50,效果是四舍五入到最接近的100,而不是截断到100的最大倍数。(例如,149变为100,但150变为200。)我只
int size = . . .;
int nearestHundred = 100 * ((size + 50) / 100);
说明:除以100将截断为小于或等于商的最大整数。乘以100可将商缩放回所需单位。通过在除法之前加上50,效果是四舍五入到最接近的100,而不是截断到100的最大倍数。(例如,149变为100,但150变为200。)我只是想添加这个作为替代;由于您仍希望在轴内拟合整个图形,因此可能希望始终向上取整到下一个较大的100,而不是最近的100 要做到这一点,双,只是使用,为定期四舍五入
因为你是在一个你想必想要的轴上使用它,所以所有的图都是适合的,不是吗?@JoachimIsaksson,你是对的,这个概念是错的。。请告诉我如何根据目录大小的最大值绘制y轴值。要始终向上取整,请将Ted答案中的
size+50
更改为size+99
,如果是整数。如果是十进制,请使用类似于100.0*Math.ceil(size/100)
的内容。谢谢,这是一个完整的帮助。你能解释一下吗。。它能做什么?为什么你要与199相乘?@Tarun-解释补充道:)@Tarun-199?是 啊固定的
double value = 8239;
double rounded_up = 100 * Math.ceil(value / 100);
System.out.println(rounded_up);
> 8300.0
double rounded_closest = 100 * Math.round(value / 100.0);
System.out.println(rounded_closest);
> 8200.0