1

我正在尝试将随机日期生成为 Java 日期,但日期保持不变。我希望时间只是随机的,而不是日期。

例如测试用例 1:1/1/2013 9:08:52

测试用例 2:1/1/2013 15:01:42 等。

有任何想法吗?

嘿伙计们,我发现了一些有用的东西。谢谢您的帮助!

import java.util.Random;
import java.sql.Time;

public class Clock2 {
public static void main(String[] args) {

    for (int i=0; i< 100; i++){ 
        final Random random = new Random();
        final int millisInDay = 24*60*60*1000;
        Time time = new Time((long)random.nextInt(millisInDay));
        System.out.println(time);
    }

}
4

2 回答 2

1

使用它来找出您想要的日期的开始和结束 Unix 时间戳:http ://www.epochconverter.com/

long在这两个值之间生成一个随机数。最终long使用SimpleDateFormat http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html格式化

于 2013-04-17T03:24:46.650 回答
0

尝试

    Random r = new Random();
    GregorianCalendar c = new GregorianCalendar(r.nextInt(100) + 2000, r.nextInt(11), r.nextInt(31));
    long t0 = c.getTimeInMillis();
    for(int i = 0; i < 10; i++) {
        Date d = new Date(t0 + r.nextInt(24 * 3600 * 1000));
        System.out.println(d);
    }
于 2013-04-17T04:32:38.030 回答