Java 生成随机日期,时间

Java 没有随机生成日期,时间的函数。不过有Random函数。通过灵活使用Random 函数可以生成日期,时间。

引用:

import java.util.Random;

函数详情如下:

public String randomDate(){
        Random rndYear=new Random();
        int year=rndYear.nextInt(18)+2000;  //生成[2000,2017]的整数;年
        Random rndMonth=new Random();
        int month=rndMonth.nextInt(12)+1;   //生成[1,12]的整数;月
        Random rndDay=new Random(); 
        int Day=rndDay.nextInt(30)+1;       //生成[1,30)的整数;日
        Random rndHour=new Random();
        int hour=rndHour.nextInt(23);       //生成[0,23)的整数;小时
        Random rndMinute=new Random(); 
        int minute=rndMinute.nextInt(60);   //生成分钟
        Random rndSecond=new Random();
        int second=rndSecond.nextInt(60);   //秒
      return year+"-"+month+"-"+Day+"  "+hour+":"+minute+":"+second;
    }
这样输出结果是“yyyy-m-d  h:m:s ”类型的字符串。如果需要两位的 那使用下面的函数:

 private String randomDate(){
        Random rndYear=new Random();
        int year=rndYear.nextInt(18)+2000;
        Random rndMonth=new Random();
        int month=rndMonth.nextInt(12)+1;
        Random rndDay=new Random();
        int Day=rndDay.nextInt(30)+1;
        Random rndHour=new Random();
        int hour=rndHour.nextInt(23);
        Random rndMinute=new Random();
        int minute=rndMinute.nextInt(60);
        Random rndSecond=new Random();
        int second=rndSecond.nextInt(60);
      return year+"-"+cp(month)+"-"+cp(Day)+"  "+cp(hour)+":"+cp(minute)+":"+cp(second);
    }
    private String cp(int num){
        String Num=num+"";
        if (Num.length()==1){
         return "0"+Num;
        }else {
            return Num;
        }
    }
这样使用randomDate()后格式为:“yyyy-mm-dd  HH:mm:ss”;

如:2016-05-25 09:33:01

注:生成的日期的可能不存在的日期;如2月31号等。




  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值