java 基于标准差和平均值生成一组随机数
时间: 2023-08-08 09:01:00 浏览: 89
Java提供了一个Random类来生成随机数。要基于标准差和平均值生成一组随机数,可以使用以下步骤:
1. 创建一个Random对象:Random rand = new Random();
2. 定义平均值和标准差:double mean = 平均值; double deviation = 标准差;
3. 使用Box-Muller变换生成一个伪随机数:double randNum = rand.nextGaussian();
4. 根据公式计算新的随机数:double newRand = (deviation * randNum) + mean;
5. 重复步骤3和4,生成所需数量的随机数。
以下是一个可以生成一组随机数的示例代码:
```java
import java.util.Random;
public class RandomGenerator {
public static void main(String[] args) {
int numRandoms = 10; // 需要生成的随机数的数量
double mean = 50; // 平均值
double deviation = 10; // 标准差
Random rand = new Random();
for (int i = 0; i < numRandoms; i++) {
double randNum = rand.nextGaussian();
double newRand = (deviation * randNum) + mean;
System.out.println(newRand);
}
}
}
```
在上面的代码中,我们通过调用`rand.nextGaussian()`生成一个符合标准正态分布的随机数。然后,我们使用公式`(deviation * randNum) + mean`将标准差和平均值应用于随机数,从而得到所需的随机数。我们可以通过循环重复这个过程,以生成需要的随机数的数量。