gpt4 book ai didi

java - 如何防止在随机 int 中生成值? ( java )

转载 作者:行者123 更新时间:2023-11-30 00:52:47 25 4
gpt4 key购买 nike

我有两个随机生成的变量。 LoadG4 输出到一个按钮,其他 3 个按钮生成的 randoms1 具有不同的值。我的目标是确保随机生成的 randoms1 的值不等于 LoadG4。例如,如果范围在 0 到 9 之间并且 LoadG4 最终为 3,则 randoms1.nextint... 中的其他随机数不得为 3。例如,它们可能为 7、4 或 5,但与加载G4。

这是我的代码:

Random GenerateG4 = new Random();
int loadG4 = GenerateG4.nextInt(10);
Random randoms1 = new Random();
final TextView number = (TextView) findViewById(R.id.number);
number.setText(""+loadG4);
for(int allrbA=0; allrbA<4; allrbA++) {
selectrb[allrbA].setText(""+randoms1.nextInt(10));
}
selectrb[rbselector].setText(""+loadG4);

我该怎么做?

非常感谢。

更新代码:

if (rbvalue==loadG4) {
int realrbvalue = rbvalue++;
selectrb[allrbA].setText(""+realrbvalue);
}
else {
selectrb[allrbA].setText(""+rbvalue);
}
}

为什么还是不行?

最佳答案

以下应该会让您走上正确的轨道。我们的想法是,对于第二次提取,我们将范围缩小一个。如果提取的数字小于之前提取的数字,那很好。如果不是,那么我们将其加 1 以获得 [v1+1, n] 范围内的数字:

Random r = new Random();
int v1 = r.nextInt(n);
int v2 = r.nextInt(n-1);
if (v2 >= v1)
v2++

关于java - 如何防止在随机 int 中生成值? ( java ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40698285/

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