java - 以相同的概率选择三个数字之一?

标签 java random

我想以相同的概率 (33.3%) 选择三个数字之一。我可以使用 Random 类来实现此目的吗?

运行 100 次后,每个数字被选中的百分比是多少?会是均等的 33.3% 吗?

最佳答案

使用Random.nextInt(n)方法选择 02 之间的数字。使用它来选择三个值之一。

int index = Random.nextInt(3);
int selectedValue = myOptions[index];

该方法返回的值是均匀分布的。因此,如果无限重复这个过程,每个数字被选中的概率将接近 1/3。

来自文档:

All n possible int values are produced with (approximately) equal probability

关于java - 以相同的概率选择三个数字之一?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21453308/

相关文章:

c++ - 为什么我每次运行程序时生成的 'randomly' 数字都在增加?

java - 请解释一下 Spring Boot 中的 Pre-flight Filter 代码

java - 错误:java.lang.RuntimeException:java.lang.ClassNotFoundException:类WordCountExample $ Map找不到

linux - 绕过 dev/urandom|random 进行测试

python - 如何在 Python 中使用 Regex/Strip() 去除字符串末尾的随机字符?

c# - 从 C# 中 0 和 1 之间的随机字节数组中获取随机 double (浮点)值?

c# - 如何在 Lua 和 C# 中生成一组相同的随机数?

JavaMail 和 IP4 与 IP6

java - 我在尝试创建 XML 文件时不断出错

java - 如何在不使用 UI 的情况下将站点列表添加到 Java Security?