gpt4 book ai didi

java - 不重复结果的随机数生成器

转载 作者:行者123 更新时间:2023-11-30 04:24:46 26 4
gpt4 key购买 nike

如何使随机数生成器不会重复数字?我尝试过这个,但它总是给我重复的数字

public int random(int a, int b,int c,int d,int e,int f,int g,int h,int i,int j,int k,int l){
Random generator = new Random();
int choice = generator.nextInt(12) + 1;
if((choice!=b)|(choice!=c)|(choice!=d)|(choice!=e)|(choice!=f)|(choice!=g)|(choice!=h)|(choice!=i)|(choice!=j)|(choice!=k)|(choice!=l)){
a=choice;
}
else{
random(a,b,c,d,e,f,g,h,i,j,k,l);


}
System.out.println(choice);
return a;

最佳答案

这取决于重复之前应该生成多少个,因为如果您完全不允许所有重复,您最终必定会用完。

如果您只需要几十个,请创建一个连续数字数组和 shuffle他们。

如果您需要更长的序列,则需要在生成序列时对其进行记录,并且每当您看到重复序列时,请请求另一个序列。一个HashSet在这里会做得很好。

关于java - 不重复结果的随机数生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16231673/

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