Random gen method in java doesn't seem random
本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
True random generation in Java
Java random always returns the same number when I set the seed?
我在一个程序中运行这段代码。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
如果我运行这几次,我的输出是这样的。
AAAAAAAABBAAAAAABB
不总是这样。但它几乎从未接近50/50
更新:我不期望50分,但是如果先选择"aa",那么它将是下一个大约3次,但是如果先选择bb,它也将是下一个3次。
嗯,对我来说并不算太糟。让我们创建一个更具统计意义的测试:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
5次运行的样本输出:
1 2 3 4 5 | Total: 501184 Total: 499740 Total: 500116 Total: 500374 Total: 500413 |
在我看来没有很大的偏见…
我在循环内部调用
这样做10000次,它将接近50:50。
然后掷9次硬币-结果可能与random.nextint()给你的结果相似。
这里的关键是统计大量的数据。
另外,使用
您需要向随机类添加种子。通常是时间戳。所以尝试一下