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; 
  
    } 
  
    }

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/10683.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论