📜  1 到 10 之间的 math.random java - Java (1)

📅  最后修改于: 2023-12-03 15:13:04.945000             🧑  作者: Mango

Java中的Math.random函数

在Java中,可以使用Math.random函数生成一个[0,1)之间的随机数。但是对于需要生成指定范围内的随机数,需要进一步处理。

生成指定范围内的整数随机数
1 到 10 之间的整数随机数
int num = (int)(Math.random() * 10) + 1;

解析:Math.random()生成的数是[0,1)之间的小数,乘以10之后得到的是[0,10)之间的小数,再强制转换为整数类型,得到的就是0到9之间的整数,加上1之后,得到的就是1到10之间的整数。

100 到 200 之间的整数随机数
int num = (int)(Math.random() * 101) + 100;

解析:Math.random()生成的数是[0,1)之间的小数,乘以101之后得到的是[0,101)之间的小数,再强制转换为整数类型,得到的就是0到100之间的整数,加上100之后,得到的就是100到200之间的整数。

生成指定范围内的浮点数随机数
1 到 10 之间的浮点数随机数
double num = Math.random() * 9 + 1;

解析:Math.random()生成的数是[0,1)之间的小数,乘以9之后得到的是[0,9)之间的小数,再加上1之后,得到的就是1到10之间的小数。

100 到 200 之间的浮点数随机数
double num = Math.random() * 101 + 100;

解析:Math.random()生成的数是[0,1)之间的小数,乘以101之后得到的是[0,101)之间的小数,再加上100之后,得到的就是100到200之间的小数。

总结

在Java中,使用Math.random函数可以生成[0,1)之间的随机数。通过乘以一个因子和加上一个偏移量,可以生成指定范围内的随机数。需要注意的是强制类型转换时可能会导致精度损失。