悟空金箍发型:java程序要产生日期型的随机函数应该怎么写呢?

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 11:36:39
java程序要产生日期型的随机函数应该怎么写呢?
请尽量具体些,而且要不重复的随机数

import java.util.*;
import java.util.Random;

public class RandomDate
{
public static void main(String args[])
{
int data=0,data2=0,count=1,count2=1;
boolean flag = true,flag2=true;
Random random1=new Random();
Random random2=new Random();

ArrayList al1=new ArrayList();
ArrayList al2=new ArrayList();
do
{

int num=random1.nextInt(12)+1;
int num2=random2.nextInt(31)+1;

String str1=String.valueOf(num);
String str2=String.valueOf(num2);
//月
for(int i=0;i<al1.size();i++)
{
String s=(String)al1.get(i);
int a=Integer.parseInt(s);
if(a==num)
{
data++;
}
}
if(data==0)
{
al1.add(str1);
//System.out.println(num);
count++;
}
data = 0;
if(count>12)
{
flag = false;
}

//日
for(int j=0;j<al2.size();j++)
{
String s2=(String)al2.get(j);
int b=Integer.parseInt(s2);
if(b==num2)
{
data2++;
}
}
if(data2==0)
{
al2.add(str2);
//System.out.println(num2);
count2++;
}
data2=0;
if(count2>31)
{
flag2=false;
}

}
while(flag2);

for(int k1=0;k1<al1.size();k1++)
{
for(int k2=0;k2<al2.size();k2++)
{
System.out.println(al1.get(k1)+"月"+al2.get(k2)+"日");
}
}
}
}