回答
只需:
public static long roundEven(double d) {
return Math.round(d/2) * 2;
}
给出:
System.out.println(roundEven(2.999)); // 2
System.out.println(roundEven(3.001)); // 4
是的!非常感谢! – Jannis
double foo = 3.7754;
int nextEven;
if (((int)foo)%2 == 0)
nextEven = (int)foo;
else
nextEven = ((int)foo) + 1;
可能会做什么你需要
不适用于4.8 –
@MuratK。是的,它的确如此......它给出了4个想要的。他不希望数字四舍五入,但他希望得到下一个偶数^^ –
@MuratK。根据SO 2.7657将成为2.所以4.8应该成为4 ...这是最接近的偶数,但不幸的是,我不允许使用if/else来处理4.8 –
尝试Math.ceil(...)
int roundToNextEven(double d) {
int hlp = (int)Math.ceil(d);
if (hlp%2 == 0)
return hlp;
return hlp-1;
}
的想法是,如果下一个上限浮动甚至没有,我们必须舍入到地面,而不是四舍五入到小区。
您还可以使用Math.floor(...)
..唯一的区别是,你必须四舍五入到小区(加1的结果),如果楼层不连
int roundToNextEven(double d) {
int hlp = (int)Math.floor(d);
if (hlp%2 == 0)
return hlp;
return hlp+1;
}
- 1. 如何将小数点四舍五入到SQL中最接近的偶数?
- 2. 在Java中将double减少到其他double的最接近倍数?
- 3. 如何找到最接近的偶数给定的int? (给定11返回12)
- 4. javascript:我如何将一个数字舍入到最接近的10美分?
- 5. 如何将一个数字四舍五入到最接近的x增量值
- 6. 如何将一个整数舍入到Pascal中最接近的1000?
- 7. 找到最接近的一个小时
- 8. 增加一倍到下一个最接近的值?
- 9. 你会如何在Swift 3中将浮点值向上或向下舍入到最接近的偶数整数?
- 10. 如何在添加到Map时将double数组添加到Double数组?
- 11. 如何将数字四舍五入到最接近的.5?
- 12. 如何找到一个最接近的街道
- 13. 如何找到哪个值最接近C中的数字?
- 14. 如何将小数点四舍五入到最接近的八分之一C
- 15. 四舍五入到最接近的下一个数字
- 16. 向上舍入一个双精度到最接近的整数
- 17. 计算一个值并舍入到最接近的整数
- 18. 追加和最接近的每个div
- 19. 如何将数值向上舍入到数字的最接近系数
- 20. 如何将十进制值舍入到最接近的0.05值?
- 21. 如何将浮点四舍五入到最接近的.001
- 22. 点击一个链接,并找到最接近的元素
- 23. 将十进制小数加到10的最接近的倍数,用php
- 24. 选择一个最接近的元素
- 25. Round BigDecimal到最接近的整数值
- 26. JavaScript取整到最接近的整数
- 27. SQL找到最接近的数字
- 28. 圆整数到最接近0.2的PHP
- 29. ,如何将我找到一个数组最接近的匹配,到指定号码
- 30. 我如何总是将十进制值整数到最接近的整数值?
的[可能的复制圆浮点数到下一个整数值在java](http://stackoverflow.com/questions/8753959/round-a-floating-point-number-to-the-next-integer-value-in-java) –
为什么' 489.5435'被提升到下一个整数值,但是'2.7657'只获得整数部分评估? – npinti
已经试过'Math.ceil(double)'? – pelumi