java 在某个范围日期内获取一个日期,再以这个日期作为开始日期,获取到随机n天后的日期

  1. /**
  2. * 在beginDate和endDate之间获取一个随机日期作为开始日期
  3. * @param beginDate 日期开始范围
  4. * @param endDate 日期结束范围
  5. * @param randNum 开始日期和结束日期的之间的天数
  6. * @return 依据 开始日期和randnum 算出结算日期并返回
  7. */
  8.  
  9. public static List<Date> randomDate(String beginDate, String endDate,int randNum) {
  10. List<Date> list = new ArrayList<Date>();
  11. Date startTime = null;
  12. Date endTime = null;
  13. try {
  14. SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
  15. Date start = format.parse(beginDate);// 构造开始日期
  16. Date end = format.parse(endDate);// 构造结束日期
  17. // getTime()表示返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。
  18. if (start.getTime() >= end.getTime()) {
  19. return null;
  20. }
  21. long date = random(start.getTime(), end.getTime());
  22. startTime = new Date(date);
  23. //System.out.println(date);
  24. date = date + randNum * 24*60*60*1000;
  25. //System.out.println(date);
  26. endTime = new Date(date);
  27.  
  28. //System.out.println(dateToString(startTime, "yyyy-MM-dd"));
  29. //System.out.println(dateToString(endTime, "yyyy-MM-dd"));
  30.  
  31. } catch (Exception e) {
  32. e.printStackTrace();
  33. }
  34. list.add(startTime);
  35. list.add(endTime);
  36. return list;
  37. }
  38.  
  39. private static long random(long begin, long end) {
  40. long rtn = begin + (long) (Math.random() * (end - begin));
  41. // 如果返回的是开始时间和结束时间,则递归调用本函数查找随机值
  42. if (rtn == begin || rtn == end) {
  43. return random(begin, end);
  44. }
  45. return rtn;
  46. }

java 随机日期的更多相关文章

  1. java随机范围内的日期

    使用了最新的java8的java.time类,并提供了LocalDateTime和java.util.Date之间的转换. 使用方法: randomLocalDateTime(-3,3) : 取距离今 ...

  2. Java产生指定范围内的随机日期

    要想产生指定范围内的随机日期,首先我们要指定一个范围,那么我们可以通过SImpleDateFormat格式化日期,然后再通过parse()方法设置日期,返回一个Date类型的日期对象,再转化为时间戳( ...

  3. Java 获取随机日期

    /** * 获取随机日期 * @param beginDate 起始日期 * @param endDate 结束日期 * @return */ public static Date randomDat ...

  4. 一个比较全面的java随机数据生成工具包

    最近,由于一个项目的原因需要使用一些随机数据做测试,于是写了一个随机数据生成工具,ExtraRanom.可以看成是Java官方Random类的扩展,主要用于主要用于测试程序.生成密码.设计抽奖程序等情 ...

  5. Java自学-日期 日期格式化

    Java中使用SimpleDateFormat 进行日期格式化类 SimpleDateFormat 日期格式化类 示例 1 : 日期转字符串 y 代表年 M 代表月 d 代表日 H 代表24进制的小时 ...

  6. Java自学-日期 Date

    Java的日期类Date Date类 注意:是java.util.Date; 而非 java.sql.Date,此类是给数据库访问的时候使用的 示例 1 : 时间原点概念 所有的数据类型,无论是整数, ...

  7. JMeter - 生成随机数/随机字符串/随机变量/随机日期

    1. Random - 随机数 1.1 作用 1.2 声明 1.3 例子 2. __RandomDate - 随机日期 2.1 作用 2.2 声明参数 2.3 例子 3. RandomString - ...

  8. [转载]Java 8 日期&时间 API

    Java 8 日期和时间 声明 本文转自http://www.journaldev.com/2800/java-8-date-localdate-localdatetime-instant,以mark ...

  9. 【转】JAVA 8 日期/时间(Date Time)API指南

    前言 本来想写下Java 8的日期/时间API,发现已经有篇不错的文章了,那就直接转载吧~ PS:主要内容没变,做了部分修改. 原文链接: journaldev 翻译: ImportNew.com - ...

随机推荐

  1. Oracle中的日期处理方法

    日期处理方法                                                        当前日期和时间 Select sysdate from dual; 本月最后 ...

  2. [Bash] Create Aliases in .bash_profile for Common Bash Commands

    .bash_profile is a file that bash invokes (or more technically sources) before the start of a new ba ...

  3. [Node.js]24. Level 5: Express, Express routes

    Create an express route that responds to GET requests at the URL /tweets that responds with the file ...

  4. 重命名IDEA14项目名

    Project Settings / Project ->">工程结构(ctrl-alt-shift-s)->设置->项目/项目Project name: 请注意,这 ...

  5. 分享几套古典复古式的UI设计

    古典复古的UI界面设计能够非常好的点缀你的网页,特别是如果你需要展示你的产品或者内容的深度内涵或者体验你的内容或者产品的经久不衰的气质的 话,古典或者复古式的界面UI绝对是你首选,在这里我们收集了10 ...

  6. berkelydb学习

    http://www.oracle.com/technetwork/cn/java/seltzer-berkeleydb-sql-085418-zhs.html 官网中文学习网址

  7. Struts2(四)Action一接收参数

    一.属性接收参数并输出 导入struts2的包,导入需要的包 和struts.xml配置文件 <?xml version="1.0" encoding="UTF-8 ...

  8. EL运算符(web基础学习笔记十七)

    一.EL语法 1.1.语法结构 ${expression} 1.2.[]与.运算符 EL 提供.和[]两种运算符来存取数据. 当要存取的属性名称中包含一些特殊字符,如.或?等并非字母或数字的符号,就一 ...

  9. Python 图形界面(GUI)设计

    不要问我为什么要用 Python 来做这种事,我回到“高兴咋地”也不是不可以,总之好奇有没有好的解决方案.逛了一圈下来,总体上来说,Python 图形界面有以下几个可行度比较高的解决方案. 1. py ...

  10. 【基于Android的ARM汇编语言系列】之三:ARM汇编语言程序结构

    作者:郭嘉 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells github:https://github.com/AllenWell [ ...