为了触发一些未来的事件,我正在尝试创建一个算法,它将执行以下操作:
- 生成特定数量的格式为“
yyyy-mm-dd
”的随机日期 - 为每个日期生成格式为“
hh:mm:ss
”的时间。时间应该在(24小时)9点和22点之间 - 将这些项添加到一个字符串数组中。1个完整的数组条目看起来像“
2013-02-25 09:45:23
”
我不知道如何执行这个算法。有任何建议吗?
你需要的准确解决方案...
public class RandomDateTime {
public static void main(String[] args) {
SimpleDateFormat dfDateTime = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss",Locale.getDefault());
int year = RandomDateTime.randBetween(1900, 2013);// Here you can set Range of years you need
int month = RandomDateTime.randBetween(0, 11);
int hour = RandomDateTime.randBetween(9, 22); //Hours will be displayed in between 9 to 22
int min = RandomDateTime.randBetween(0, 59);
int sec = RandomDateTime.randBetween(0, 59);
GregorianCalendar gc = new GregorianCalendar(year, month, 1);
int day = RandomDateTime.randBetween(1, gc.getActualMaximum(gc.DAY_OF_MONTH));
gc.set(year, month, day, hour, min,sec);
System.out.println(dfDateTime.format(gc.getTime()));
}
public static int randBetween(int start, int end) {
return start + (int)Math.round(Math.random() * (end - start));
}
}
new Date(long)
将其转换为日期,并按需要进行格式化。 - Henry