[英]Rounding off values in Java
我有一个double
变量输出一些值。 例子:
如果value = 62.42,我想将值四舍五入为62。
如果value = 62.99,我想将值四舍五入为62。
无论小数位是什么,它都应该只显示整个值。
Math.floor(双a)
返回小于或等于参数且等于数学整数的最大(最接近正无穷大)double值。
以下两种情况下均为62
。
public class Round {
public static void main(String[] args) throws Exception {
System.out.println((int)Math.floor(62.99));
System.out.println((int)Math.floor(62.42));
}
}
或者您可以使用Math.round(Math.floor(double a))
将其转换为int。 这会将double值截断为整数部分,丢弃该数字的任何小数部分。
例如。
double d = 1.7;
int i = (int) d; // i = 1
您是否尝试将此十进制值分配给整数? 像这样:
int val = value; //where value = 62.42;
double doubleRounded = Math.round(doubleWithDecimals);
double doubleFloored = Math.floor(doubleWithDecimals);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.