gpt4 book ai didi

java - 创建随机值的最佳方法是什么?

转载 作者:行者123 更新时间:2023-12-02 11:02:40 25 4
gpt4 key购买 nike

我正在尝试为我的游戏创建随机值以在屏幕上显示敌人。但有时会显示 2 有时会显示 3 ...我想问哪个是创建随机值的最佳公式..这是我迄今为止的随机值

 random = 1 * (int) (Math.random() * 100);

最佳答案

“但是有时会显示 2,有时会显示 3”

给定完全随机的数字...在从 0 到 99 的每 100 个随机值中,您会发现平均有 1.0 个 double 。每 10,000 个值平均会出现一次三元组。给定 1000 万个随机数,java.util.Random 在我的机器上产生以下结果:

Doubles: 99873Triples: 985Double Rate: 1 in 100Triple Rate: 1 in 10152

Source code:

import static java.lang.System.*;

import java.util.Random;

public class Sandbox {
public static final int NUM_ITERATIONS = 10000000;
public static void main(String[] args) {
Random rand = new Random();

int cur;
int last = -1;
int secondLast = -2;
int nDoubles = 0;
int nTriples = 0;

for (int i = 0; i < NUM_ITERATIONS; i++) {
cur = rand.nextInt(100);
if (cur == last) {
nDoubles++;
if (cur == secondLast) nTriples++;
}
secondLast = last;
last = cur;
}

out.println("Doubles: " + nDoubles);
out.println("Triples: " + nTriples);
out.println();
out.println("Double Rate: 1 in " + Math.round(1.0 * NUM_ITERATIONS / nDoubles));
out.println("Triple Rate: 1 in " + Math.round(1.0 * NUM_ITERATIONS / nTriples));

exit(0);
}
}

关于java - 创建随机值的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2484572/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com