疯狂java


您现在的位置: 疯狂软件 >> 新闻资讯 >> 正文

Java获取随机时间


 

import java.text.parseexception;

    import java.text.simpledateformat;

    import java.util.date;

    public class getrandomtiem {

    //返回2011-01-01到2011-12-01的一个随机日期

    public static void main(string []args){

    simpledateformat format = new simpledateformat("hh:mm:ss");

    date randomdate=randomdate("00:00:00","24:59:59");

    string randomdats="shi"+randomdate.gethours()+"f"+randomdate.getminutes()+"m"+randomdate.getseconds();

    system.out.println(randomdats);

    }

    /**

    * 获取随机日期

    * @param begindate 起始日期,格式为:yyyy-mm-dd

    * @param enddate 结束日期,格式为:yyyy-mm-dd

    * @return

    */

    private static date randomdate(string begindate,string enddate ){

    try {

    simpledateformat format = new simpledateformat("hh:mm:ss");

    date start = format.parse(begindate);//构造开始日期

    date end = format.parse(enddate);//构造结束日期

    //gettime()表示返回自 1970 年 1 月 1 日 00:00:00 gmt 以来此 date 对象表示的毫秒数。

    if(start.gettime() >= end.gettime()){

    return null;

    }

    long date = random(start.gettime(),end.gettime());

    return new date(date);

    } catch (exception e) {

    e.printstacktrace();

    }

    return null;

    }

    private static long random(long begin,long end){

    long rtn = begin + (long)(math.random() * (end - begin));

    //如果返回的是开始时间和结束时间,则递归调用本函数查找随机值

    if(rtn == begin || rtn == end){

    return random(begin,end);

    }

    return rtn;

    }

    }