本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《 阿里云开发者社区用户服务协议 》和 《 阿里云开发者社区知识产权保护指引 》。如果您发现本社区中有涉嫌抄袭的内容,填写 侵权投诉表单 进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。 public static int getBetweenMinute(Date date){ // DateUtil.beginOfDay(new Date())当天时间凌晨 //当前时间 目标时间 时间间隔类型(时、分、秒。。。) long between = DateUtil.between(DateUtil.date(), date, DateUnit.MINUTE); return Math.toIntExact(between); * 生成相隔时间的数组 public static List<String> minuteList(){ Date date = new Date(); List<Date> ds = test(date); List<String> list = new ArrayList<>(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); for (Date d : ds) { list.add(sdf.format(d)); return list; public static void main(String[] args) { // Date date = new Date(); // List<Date> ds = test(date); // SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // for (Date d : ds) { // System.out.println(sdf.format(d)); // } System.out.println(minuteList()); public static List<String> findDates(String stime, String etime) throws ParseException { List<String> allDate = new ArrayList(); SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date dBegin = sdf.parse(stime); Date dEnd = sdf.parse(etime); allDate.add(sdf.format(dBegin)); Calendar calBegin = Calendar.getInstance(); // 使用给定的 Date 设置此 Calendar 的时间 calBegin.setTime(dBegin); Calendar calEnd = Calendar.getInstance(); // 使用给定的 Date 设置此 Calendar 的时间 calEnd.setTime(dEnd); // 测试此日期是否在指定日期之后 while (dEnd.after(calBegin.getTime())) { // 根据日历的规则,为给定的日历字段添加或减去指定的时间量 calBegin.add(Calendar.DAY_OF_MONTH, 1); allDate.add(sdf.format(calBegin.getTime())); return allDate; static List<Date> test(Date date) { Date start = dayStartDate(date);//转换为天的起始date Date nextDayDate = nextDay(start);//下一天的date List<Date> result = new ArrayList<Date>(); while (start.compareTo(nextDayDate) < 0) { result.add(start); //日期加5分钟 start = addFiveMin(start, 15); return result; private static Date addFiveMin(Date start, int offset) { Calendar c = Calendar.getInstance(); c.setTime(start); c.add(Calendar.MINUTE, offset); return c.getTime(); private static Date nextDay(Date start) { Calendar c = Calendar.getInstance(); c.setTime(start); c.add(Calendar.DATE, 1); return c.getTime(); private static Date dayStartDate(Date date) { Calendar c = Calendar.getInstance(); c.setTime(date); c.set(Calendar.HOUR_OF_DAY, 0); c.set(Calendar.MINUTE, 0); c.set(Calendar.SECOND, 0); c.set(Calendar.MILLISECOND, 0); return c.getTime(); * @author wuqs * @version 1.0.0 * @Description 获取i分钟后的时间 * @createTime 2021年11月29日 15:58:00 public static String getMinute(int i) { SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss"); Calendar nowTime2 = Calendar.getInstance(); nowTime2.add(Calendar.MINUTE, i * 15); return sdf.format(nowTime2.getTime());