用java 怎么生成6位的随即数而且不能重复 望高手指教作用是用于防伪码
------解决方案--------------------
String ret= " ";
while(ret.length() <=6){
String p = Math.round((Math.random()*10))+ " ";
if(ret.indexOf(p)==-1)
ret+= p;
}
System.out.println(ret);
------解决方案--------------------
用时间做seed就可以了
------解决方案--------------------
ls正解
------解决方案--------------------
随机还是会重复的啊。 所以已经生成的你要保存起来。
再生成时去检查是否已经生成,如果是的话,需要random。
------解决方案--------------------
String ret= " ";
while(ret.length() <=6){
String p = Math.round((Math.random()*10))+ " ";
if(ret.indexOf(p)==-1)
ret+= p;
}
System.out.println(ret);
有重复的
------解决方案--------------------
用种子随机数
rand()函数产生的是伪随机数
需要料用一次srand(seed)
unsigned seed
seed是种子一般可写成time()
#include <stdlib.h>
#include <time.h>
void main()
{
int a[10];
srand(time(null));
for(int i=0;i <10;i++)
{
a[i]=rand();
printf( "a[%d]=%d \n ",i,a[i]);
}
}