java随机生成6/8/12位数,要求每次产生的随机数与已生成的随机数不重复

时间:2021-06-04 16:43:39

备注:如果有相同的数据,那么就重新生成一个新的数据:

  后台代码如下:

public static void main(String[] args) {

String cardNumber=returnCard();//调用下边的方法

public String returnCard(){
String cardNnumer=getCard();//调用生成随机数的方法:这里以6位为例
SuECard eCard = eCardService.selectByCardNum(cardNnumer);//生成的随机数进入数据库中查询一下,看时候有相同的。
if(eCard != null){//如果有相同的数据
return returnCard();//再次调用方法,生成一个随机数
}else{//否则
return cardNnumer;//这个数据我就要
}
}
//生成随机数
public static String getCard(){
Random rand=new Random();//生成随机数
String cardNnumer="";
for(int a=0;a<6;a++){
cardNnumer+=rand.nextInt(10);//生成6位数字
}
return cardNnumer;


}