您的位置:首页 > 编程语言 > Java开发

math.random()和Math.round的区别

2016-05-18 17:25 453 查看
Month.random()

Math.random()是令系统随机选取大于等于 0.0 且小于 1.0 的伪随机 double 值。

Math.random():产生一个[0,1)之间的随机数。

返回指定范围的随机数(m-n之间)的公式:

Math.random()*(n-m)+m;


Math.round(float a)

public static long round(double d) {
// check for NaN
if (d != d) {
return 0L;
}
return (long) floor(d + 0.5d);
}


可以看到在 floor里面 d 加了0.5;和的结果为整数。

如果d 是整数 则返回值是整数。

java.lang.Math.round(float a)返回和参数最接近的整数。结果四舍五入为整数。

特殊情况:

如果参数是NaN,则结果为0.

如果参数是负无穷大或任何小于或等于Integer.MIN_VALUE的值,那么结果等于Integer.MIN_VALUE的值.

如果参数是正无穷大或Integer.MAX_VALUE的值大于或等于任何值,则结果等于Integer.MAX_VALUE的值.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java