android - 生成随机日期和时间

Dro*_*man 2 java arrays datetime android

触发一些未来的事件我正在尝试创建一个算法,它将执行以下操作:

  • 以格式" yyyy-mm-dd" 生成一定数量的随机日期
  • 以格式" hh:mm:ss" 生成每个日期的时间.时间应该是(24小时)9到22小时之间
  • 将这些项添加到String数组中.1个完整的数组条目看起来像" 2013-02-25 09:45:23"

我没有明确的想法如何执行此操作.有什么建议?

Ram*_*ran 7

精确解决方案您需要什么..

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));
    }
}
Run Code Online (Sandbox Code Playgroud)

您可以在以下网址找到SimpleDateTime的更多用法:http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html