为java中的每个连续迭代生成不同的随机数。

为java中的每个连续迭代生成不同的随机数。,java,random,Java,Random,正如在C中一样,我们有srand(time(NULL))来确保下一次调用生成的随机数与当前调用生成的随机数不同 我试过的是这个 Random r=new Random(); 对于(int i=0;iRandom r=new Random(); int newNumber; int oldNumber=-1;//将永远不会与随机数匹配。 for(int i=0;Randomctor的第一个参数是seed。还有setSeed函数。您希望在多次运行代码时打印在以前迭代中未打印的不同数字。是否可以将类中

正如在
C
中一样,我们有
srand(time(NULL))
来确保下一次调用生成的随机数与当前调用生成的随机数不同

我试过的是这个

Random r=new Random();
对于(int i=0;i
Random r=new Random();
int newNumber;
int oldNumber=-1;//将永远不会与随机数匹配。

for(int i=0;
Random
ctor的第一个参数是seed。还有
setSeed
函数。您希望在多次运行代码时打印在以前迭代中未打印的不同数字。是否可以将类中的随机变量作为静态成员移动?
new Random()
已经像
srand(time(NULL))
srand
与“确保下次通话时生成的随机数与当前通话时生成的随机数不同”无关。不清楚您在问什么。您是否尝试以随机/无序顺序获取整数1、2、…、100?newNumber==oldNumber,而不是=
Random r=new Random();
for(int i=0;i<100;i++)
{
System.out.println(r.nextInt(1000)); 
}
Random r=new Random();
int newNumber;
int oldNumber = -1; //Will never be matching the random number.
for(int i=0;i<100;i++){
    do{
        newNumber = r.nextInt(1000);
    } while (newNumber == oldNumber);
    System.out.println(newNumber));
    oldNumber = newNumber; 
}